我无法访问模型中的ID。我知道模型可以有我定义的属性idAttribute
。我的问题是我想使用我的模型的ID来进行查询,但我不知道如何。我已阅读过bookshelfJS文档,但无济于事。任何帮助是极大的赞赏。我的代码看起来像这样:
let Recipe = bookshelf.Model.extend({
tableName: 'recipes',
idAttribute: 'id',
visible: ['name', 'description', 'prep_time', 'cook_time', 'notes',
'image_url', 'ingredients', 'instructions', 'tags', 'votes'],
hasTimestamps: true,
votes: function() {
// return this.hasMany(RecipeVote);
bookshelf.knex('recipes_votes')
.sum('vote')
.where('recipe_id', `I WANT MY MODELS ID HERE`)
.groupBy('recipe_id')
.then(function (result) {
// cb(null, sum)
console.log('SUM:', result[0].sum);
return result[0].sum;
})
.catch(function (err) {
// cb(err)
console.log('THERE WAS AN ERROR:', err);
});
}
});
答案 0 :(得分:1)
我认为您可以通过以下方式访问id属性:
this.attributes.id
OR
this.get('id')