Php 使用删除方法创建事务。。。失败
我想用以下代码创建事务查询:Php 使用删除方法创建事务。。。失败,php,idiorm,Php,Idiorm,我想用以下代码创建事务查询: // Start a transaction ORM::get_db()->beginTransaction(); //this work $prs = Model::factory('PenyediaJasaORM')->find_one(77); $prs->delete(); //yes this not work, i know $klas = Model::factory('P
// Start a transaction
ORM::get_db()->beginTransaction();
//this work
$prs = Model::factory('PenyediaJasaORM')->find_one(77);
$prs->delete();
//yes this not work, i know
$klas = Model::factory('PenyediaJasaKlasifikasiORM')->find_one(100);
$klas->delete();
// Commit a transaction
ORM::get_db()->commit();
是的,在$prs查询中有效。我让$KLA不起作用,看不到结果。
但为什么我得到了错误“致命错误:在布尔值中调用成员函数delete()
我认为适当的错误应该是FALSE,而不是致命错误,因为这些查询是事务
如果我不完全理解使用多重删除查询的事务,请给我建议
感谢您的查询:
Model::factory('PenyediaJasaKlasifikasiORM')->find_one(100);
如果未找到任何内容,则返回false。您应该检查$klas变量是否为false,调用$klas->delete()
谢谢你,但不是预期的答案。。。这个问题特别是关于白痴。。。我不明白为什么要用如果。。。如果我们讨论代码,为什么idiorm不在delete方法中使用if,因为如果查询返回false,它就不是idiorm对象。您可能会争辩说,当idiorm没有找到任何东西时,它应该返回一个空的idiorm对象,当您调用delete时,它会告诉您它是空的,但框架就是这样工作的。您应该在idiorm的github页面中打开一个问题,提出建议
if($klas) {
$klas->delete();
}