我没有使用 EmberData,因为我对它不太满意。相反,我正在使用以下方法获取模型$.getJSON
:
App.Persons = App.Model.extend({
id : null,
name : null,
email : null
});
App.PersonsRoute = Ember.Route.extend({
model : function() {
return App.Persons.findAll();
}
});
App.Persons.reopenClass({
findAll : function() {
return $.getJSON("personsjson.php").then(function(response) {
var s = [];
$.each(response, function(i, row) {
return s.pushObject(App.Persons.create(row));
});
return s;
});
}
});
App.Router.map(function() {
this.resource('persons', function() {
this.resource('person', {
path : '/:person_id'
});
});
});
当有人点击使用 LinkTo Helper 的人的姓名时,我想显示电子邮件。所以我创建了一个这样的 Person 路由,
App.PersonRoute = Ember.Route.extend({
model : function(params) {
return App.Persons.findBy('id', params.person_id);
}
});
但是在 url 上,我得到的是“未定义”,而不是最后得到 id。
这是我正在做的 HTML 方面,
{{#each person in content }}
<tr><td>
{{#link-to 'person' this}} <p>{{person.name}}</p>{{/link-to}}
</td></tr>
{{/each}}
可能是什么问题?
如果有人感兴趣,我在后端做这个,
SELECT id, name, email FROM persons;