数据存储在ember中只返回一条记录

时间:2015-11-01 06:38:25

标签: javascript ember.js

我试图在模板中查看用户列表。但它只检索我输入的一条(最后一条)记录。为什么它会返回一条记录?它是数据存储缓存问题吗?以下是我遵循的方法

模板/ 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);});

1 个答案:

答案 0 :(得分:0)

问题是您必须为返回的数据users命名密钥,而不是user

所以,在getAllUsers函数体改变:

res.send({ user: docs });

要:

res.send({ users: docs });