6

是否可以与单独的模型进行一项“交易”。我想插入带有他们标签的帖子。标签和帖子位于两个独立的模型中。我怎样才能通过交易来处理它?(如下所示:)

$this->db->trans_start();
$this->post_model->insert('...');
$this->tags_model->insert('...');
$this->db->trans_complete();
4

1 回答 1

5

只要您的模型方法中没有其他事务语句,您的示例代码就应该可以正常工作。

根据文档,您可以通过传递TRUE给它来测试它$this->db->trans_start()

$this->db->trans_start(TRUE);
// Queries/model calls
$this->db->trans_complete();

if($this->db->trans_status() === FALSE)
{
    // do something if it fails
}

传递TRUEtrans_start()将在完成后自动回滚事务。您应该能够检查表上的 auto_increment 值(如果适用)以查看事务是否有效。

于 2012-09-03T17:39:36.020 回答