我试图在模板中查看用户列表。但它只检索我输入的一条(最后一条)记录。为什么它会返回一条记录?它是数据存储缓存问题吗?以下是我遵循的方法
模板/ userlist.hbs
{{#each item in model}}
{{#link-to 'userlist.edit' item.id}}edit:{{item.userName}}{{/link-to}}
{{/each}}
路由/ userlist.js
import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
return this.store.find('user');
}
});
模型/ user.js的
import DS from 'ember-data';
export default DS.Model.extend({
docType:DS.attr('string'),
firstName:DS.attr('string'),
role:DS.attr('string'),
userName:DS.attr('string'),
password:DS.attr('string'),
lastName:DS.attr('string'),
mobileNo:DS.attr('string'),
landNo:DS.attr('string'),
address:DS.attr(
{
no:'string',
street:'string',
city:'string'
}
),
nicNo:DS.attr('string'),
});
API / user.js的
module.exports.getAllUsers=function(req,res) {
UserModel.find({},function(err,docs) {
if(err) {
res.send({error:err});
}
else {
res.send({user:docs});
}
});
};
应用程序/ routes.js
router.route('/api/users').get(function(req,res){users.getAllUsers(req,res)})
.post(function(req,res){console.log(req.body);users.addUser(req,res);});
答案 0 :(得分:0)
问题是您必须为返回的数据users
命名密钥,而不是user
。
所以,在getAllUsers
函数体改变:
res.send({ user: docs });
要:
res.send({ users: docs });