私はすぐに私のtastypie apiによって提供されるember.jsアプリを作成することを計画しており、現時点ではemberに入ろうとしていますが、私は立ち往生しています!
私が作成した ember アプリケーション (フィクスチャ データを使用したチュートリアル ビデオのように) は正常に動作しますが、フィクスチャから API に切り替えようとしています。ここから問題が始まります。
これは、この短いテストで表示したい django モデルです。
class New(models.Model):
date = models.DateField("Erstellt am", auto_created=True, auto_now_add=True)
title = models.CharField("Titel", max_length=250)
content = models.TextField("Inhalt")
def __unicode__(self):
return self.title + ', ' + self.date.strftime('%d.%m.%Y')
これは私のModelResourceです:
class NewResource(ModelResource):
class Meta:
queryset = New.objects.all()
resource_name = 'new'
always_return_data = True
def determine_format(self, request):
return 'application/json'
これは私が開いたときに得られるものですhttp://127.0.0.1:8000/v1/new/
:
{"meta": {"limit": 20, "next": null, "offset": 0, "previous": null, "total_count": 2}, "objects": [{"content": "Lorem Ipsum Dolorem", "date": "2013-09-27", "id": 1, "resource_uri": "/app/new/1/", "title": "Test"}, {"content": "Lorem Ipsum Dolorem", "date": "2013-09-27", "id": 2, "resource_uri": "/app/new/2/", "title": "This is a test title"}]}
これは私のapp.jsファイルです:
App = Ember.Application.create();
App.Router.map(function() {
this.resource('news');
});
App.store = DS.Store.create({
revision: 7,
adapter: DS.DjangoTastypieadapter.extend({
serverDomain: "http://127.0.0.1:8000",
namespace: "v1"
})
});
App.New = DS.Model.extend({
date: DS.attr('string'),
title: DS.attr('string'),
content: DS.attr('string'),
});
App.NewsRoute = Ember.Route.extend({
model: function() {
var news = App.New.find()
return news;
}
});
これは私のハンドルバーです:
<script type="text/x-handlebars" id="news">
<div class="row">
<div class="col-md-2">
{{#each}}
{{#link-to 'new' this}}
{{title}} // {{date}}
{{/link-to}}
<hr>
{{/each}}
</div>
<div class="col-md-10">
{{outlet}}
</div>
</div>
先ほど言ったように、フィクスチャ データは API から取得した JSON オブジェクトと同じ形式ですが、このようにするとコンテンツは表示されません。(index.html に ember-data-tastypie-adapter ファイルが含まれています) 誰か助けてくれませんか?