gpt4 book ai didi

database - CakePHP 2.0-自定义数据库错误消息

转载 作者:行者123 更新时间:2023-12-03 07:55:24 24 4
gpt4 key购买 nike

我有一个带有MySQL数据库的CakePHP 2.0应用程序。两个数据库表以1:n关系和外键约束连接。
因此,如果我想删除另一个数据库表中连接的条目,则会收到错误消息:

Error: SQLSTATE[23000]: Integrity constraint violation: 1451 Cannot delete or update a parent row: a forein key constraint fails (...)
SQL Query: DELETE 'Test' FROM 'tests' AS 'Test' WHERE 'Test'.'id' = 10

Notice: If you want to customize this error message, create app/View/Errors/pdo_error.ctp

但是我要做的是处理错误消息!我读了一些有关'onError'的内容,但似乎没有调用它(也许仅适用于CakePHP 1.3吗?):
class Test extends AppModel {
function onError() {
echo "TESTTESTTEST";
$db = ConnectionManager::getDataSource('default');
$err = $db->lastError();
$this->log($err);
$this->log($this->data);
}
}

那我该怎么办?我想保留在此页面上,并且只想显示一条错误消息(而不是堆栈跟踪和此类信息)。

有人知道吗?

最佳答案

怎样使用.ctp?

如果要自定义此错误消息,请创建app/View/Errors/pdo_error.ctp

正在使用的一个位于Cake目录中,您可以将其复制到app/View/Errors目录中,并根据需要从中删除堆栈跟踪。

还有beforeDelete()模型回调函数,可用于设置flashMessage。

关于database - CakePHP 2.0-自定义数据库错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8749449/

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