如何使用bookshelfjs显示所有记录

how to display all records using bookshelfjs

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

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}});
    });

有什么想法吗?

使用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.