2016-08-12 3 views
0

Я попытался поместить настраиваемое условие для столбца включенной модели, чтобы оно было равно значению столбца родительской модели, но оно не работает, как ожидалось, в сиквелизующем модуле 3.8.7. Ниже приведен код, я попыталсяКак установить условие в включенную модель Sequelize?

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' 

Пожалуйста, помогите, чтобы я мог установить условия на значение столбца включенной модели.

ответ

0

Изменить required: falserequired: true. Это вернет только строки, чьи включенные строки соответствуют вашим условиям.