如何使用bookshelfjs显示所有记录

时间:2015-02-24 10:32:07

标签: javascript bookshelf.js

为什么这不显示所有频道。如何显示所有频道。

new channelModel()
    .fetch()
    .then(function (channel) {
        console.log(channel.attributes.name);
        if (channel) {
            res.json({error: false, status: 200, data: channel.attributes.name});
        } else {
            res.json({error: true, status: 404, data: 'channel does not exist'});
        }
    })
    .otherwise(function (err) {
        res.status(500).json({error: true, data: {message: err.message}});
    });

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用fetchAll

new channelModel()
   .fetchAll()
   .then(function (channels) {
       channels.forEach(function(channel) {
          // do something with each channel
       });
       // or just respond with JSON array assuming this is an Express app:
       res.send(channels.toJSON());
   })

我实际上没有尝试forEach函数,但according to bookshelf.js documentation它应该可以正常工作。如果您正在执行REST服务,您可能只想将集合(数组)序列化为JSON。