0

親モデル列の値と等しくなるように、含まれるモデルの列にカスタム条件を設定しようとしましたが、sequelize 3.8.7 モジュールで期待どおりに機能しません。以下は私が試したコードです

Quotes.findOne({
     where: {'id' : req.body.quoteId},
     include : [
      {model : Jobs},  
      {model : HaulerProfiles, include : [{model : UserFavouriteBanned, where : {'userId' : mysqlORM.sequelize.col('Job.customerId'), 'actionOn' : mysqlORM.sequelize.col('HaulerProfile.id'), 'actionType' : 'B'}, required : false}]}

   ]

})

しかし、実行したクエリ条件を確認すると、mysqlORM.sequelize.col に含まれていません。このようにLEFT OUTER JOINを実行します

LEFT OUTER JOIN `UserFavouriteBanned` AS `HaulerProfile.UserFavouriteBanned` ON `HaulerProfile`.`id` = `HaulerProfile.UserFavouriteBanned`.`actionOn` AND `Job`.`customerId` AND `HaulerProfile`.`id` AND `HaulerProfile.UserFavouriteBanned`.`actionType` = 'B'

含まれるモデルの列の値に条件を付けることができるように助けてください。

4

1 に答える 1

0

に変更required: falserequired: trueます。これにより、含まれる行が条件に一致する行のみが返されます。

于 2016-08-14T20:18:18.230 に答える