提问人:Juan I. Morales Pestana 提问时间:10/31/2022 最后编辑:marc_sJuan I. Morales Pestana 更新时间:12/1/2022 访问量:125
如何使用 cakePhp 4 实现一个带有条件和不同数据类型的 belongstTo
How to implement a belongstTo with cakePhp 4 with conditions and different data types
问:
我的设计有两个模型和.其中有一个整数字段,它作为外键传递给 varchar。ModelOne
ModelTwo
ModelOne
ModelTwo
cake 的先前版本(cakephp 2)的原始实现如下:
$this->belongsTo('ModelOne')
->setProperty('ModelOne')
->setClassName('ModelOnes')
->setConditions(['ModelOne.field_one::TEXT = ModelTwo.field_one AND ModelOne.field_two = ModelTwo.field_two']);
如您所见,强制转换是必需的,因为如果不使用它,则会引发数据类型不匹配异常。
当我这样使用它时,会抛出异常,因为似乎没有正确使用函数 CAST。当我将使用 ORM 提供的函数产生的方法 a 传递给方法时,也会发生同样的情况。setCondition
QueryExpression
$query->func()->CAST(...)
我怎样才能解决这个问题并正确指定 belongsTo 关系?
提前致谢!
我正在尝试使用数据类型转换和 SQL 函数转换或其他有效方法在 cakephp 4 中正确配置具有两种不同数据类型的 belongsTo 关系。
编辑后:
$this->belongsTo('List')->setProperty('List')->setClassName('Lists')->setConditions(['List.code::TEXT = WhiteList.code AND List.list = WhiteList.list']);
答: 暂无答案
评论