到目前为止一切都很好(或者我应该说“非常棒”)使用/学习 knex。
我正在尝试模拟以下条件以使列名搜索成为可选:
AND tableName.columnNameOne = 2349
AND tableName.columnNameTwo = 'some value'
AND ( tableName.columnNameThree = 285 OR someFlag = true )
threre 是一个“未记录的功能”(喜欢那个表达!),.ofWhereRaw
它似乎可以很好地满足我的要求:
.andWhere ( { 'tableName.columnNameOne' : columnNameOneValue
, 'tableName.columnNameTwo' : columnNameTwoValue
}
)
.andWhere ( val => {
val.where ({ 'tableName.columnNameThree' : columnNameThreeValue} )
val.orWhereRaw ( '(true = ?)' , columnNameThreeFlag)
})
作为一个新手和最近转换为 knex,这是处理这种情况的可选方法吗?我对使用文档中没有的选项感到紧张,因为在未来的版本中可能会删除未记录的选项。
非常感谢你,感谢你的 knex(不再续集)。