このjsfiddleを用意しました。これはコードです:
App = Ember.Application.create();
App.Store = DS.Store.extend({
revision: 13,
adapter: 'DS.FixtureAdapter'
});
App.Router.map(function() {
// put your routes here
});
App.User = DS.Model.extend({
name : DS.attr('string'),
email : DS.attr('string'),
});
App.User.FIXTURES = [{ id: 'me', name: 'Max Smith', email: 'max.smith@email.com' }];
App.IndexRoute = Ember.Route.extend({
model: function() {
return App.User.find();
}
});
そして、これはテンプレートです:
<script type="text/x-handlebars" data-template-name="index">
{{#each model}}
<div class="form_labels_wrapper">
<dl class="dl-horizontal">
<dt>Id:</dt> <dd>{{id}}</dd>
<dt>Name:</dt> <dd>{{name}}</dd>
<dt>Email:</dt> <dd>{{email}}</dd>
</dl>
{{/each}}
</div>
</script>
私がやりたいことは、単一のユーザーのデータを表示することです。opbject には ID がありません (セッション関連のログイン ユーザーを表し、ember には ID が表示されません)。代わりに、(1 人のユーザーを含む) ユーザーのリストを作成し、それに偽の ID ( me
) を与える必要があります。これは私のアプリケーションでは意味がありません。
このテンプレートを使用したいのですが、ember を設定する方法がわかりません:
<script type="text/x-handlebars" data-template-name="index">
<div class="form_labels_wrapper">
<dl class="dl-horizontal">
<dt>Name:</dt> <dd>{{name}}</dd>
<dt>Email:</dt> <dd>{{email}}</dd>
</dl>
</div>
</script>
このフィクスチャで:
App.User.FIXTURES = { name: 'Max Smith', email: 'max.smith@email.com' };
これは単一の要素であり、 を使用してモデルをループしていないことに注意してください。これは#each
リストであってはならないためです。単一の要素しかありません。
Ember はこれを受け入れることを拒否します。これを機能させるにはどうすればよいですか?