gpt4 book ai didi

cakephp - 如何让关联模型运行 __construct?

转载 作者:行者123 更新时间:2023-12-02 17:17:19 25 4
gpt4 key购买 nike

历史很少;我讨厌我不能在 CakePHP 中使用枚举,但我明白了。然而,我的另一个烦恼是我的 bool 值返回 0 或 1,并且没有办法将它们普遍地转换为"is"和“否”。

所以我想在 AppModel 的 afterFind 方法中创建一个小函数来为我做到这一点。我想要采取的第一步是确定哪些列是 bool 值(因为某些列将返回零和不需要转换的列)。我设计了这个小小的和平代码:

function __construct($id = false, $table = null, $ds = null) {
parent::__construct($id, $table, $ds);
foreach($this->_schema as $col => $colDetails){
if($colDetails['type'] == 'boolean')
$this->_booleans[] = $col;
}
}

但是模型中的快速调试($this)显示仅捕获当前模型的 bool 列。当我直接点击这些列时, $this->_booleans 会再次出现,而不是关联模型的那些。

我已经阅读了手册和 API。我没有看到任何关于如何实现解决方案的提及。

我做错了什么?

最佳答案

为了使应用程序数据库类型独立,CakePHP 不支持枚举。许多数据库引擎不支持枚举。对于您的任务来说,最简单的解决方案是:

echo $model['boolField'] ? 'Yes' : 'No';

关于cakephp - 如何让关联模型运行 __construct?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3598395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com