2016-08-07 9 views
0

私はブックシェルフの任意のアイデアで次のクエリを取得しようとしていますか?私は、(例えば)のbelongsToとhasManyのを使用していた後、別の質問を(このクエリが動作し、必要な結果を返している)Bookshelfのネストされたクエリ

SELECT "restaurants".*, "meals".*, (select count(*) from "public"."visitors" as "visitors" where "visitors"."meal_id" = "meals"."id") as "visitorsMealsCount" FROM "public"."restaurants" as "restaurants" inner join "public"."meals" as "meals" ON "meals"."restaurant_id" = "restaurants"."id" WHERE "restaurants"."id" = '123' 

私は帰りのオブジェクトがその

restaurants (obj) 
    meals (obj) 
    visitorsMealsCount (attribute) 

答えて

0

のようになります。期待しましたあなたのSQLステートメントはBookshelfのようなORMツールのコンセプトと一致しません。レストランや食事は返しませんが、壮大な混合物です。

2番目の質問について:new Restaurant({id: '123'}).fetch({ withRelated: ['meals']})をどうやって使うのですか?

visitorsMealsCountdocumentation I see

adminAccounts: function() { 
    return this.belongsToMany(Account).query({where: {access: 'admin'}}); 
}, 

ではので、多分

visitorsMealsCount: function() { 
    return this.belongsToMany(Visitor).count(); 
} 

作品? (私はそれを試していない)