【发布时间】:2018-12-04 10:04:32
【问题描述】:
我是 node.js 的新手,它是 ORM(bookshelf)。我需要知道如何获取具有任何特定类型的用户。
1).这里users有多个genres,意思是users有很多流派和genresbelongsToManyusers。
问题)。如何获取所有genres = 1的用户
-
下面是我的代码试图实现这一点,但无法得到正确的答案。
User.forge() .query(function(query){ query.whereExists(function(){ this.select('*').from('genres') .join('genres_user', function(){ this.on('genres.id', '=', 'genres_user.genres_id'); }) .where('users.id', 'genres_user.user_id') .where('genres_id', req.query.genres); }); }) .fetchAll({ withRelated : ['profile', 'posts'] }) .then(function (collection) { if(collection == ''){ res.json({error: true, message:'No user found!', data:{}}); } res.json({error: false, data: collection.toJson()}); }) .catch(function (err) { res.status(500).json({error: true, data: {message: err.message}}); });
【问题讨论】:
-
如果你知道 Laravel,你应该试试adonisjs.com
-
感谢您抽出时间,
adonis是一个很棒的框架,但我一定会在Express上工作。
标签: node.js orm knex.js bookshelf.js