2016-06-20 2 views
0

Я создал сделку так:Phalcon сделка не работает правильно

$this->db->begin(); 
$topic = new Topic(); 
$topic->assign($data); 
$topic->save(); 

var_dump($this->db->isUnderTransaction()); // bool(true) 

$this->db->rollback(); 

var_dump($this->db->isUnderTransaction()); // bool(false) 

Но, база данных все еще изменилось и вставить новую строку. Метод отката не работает.

ответ

2

$di->set метод будет разделяться только при вызове со вторым параметром «ИСТИНА».

$di->set('db', function() use($conf) { 
    return new DbAdapter([ 
     'host' => $conf->db->host, 
     'username' => $conf->db->username, 
     'password' => $conf->db->password, 
     'dbname' => $conf->db->dbname, 
     'options' => [ 
      \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION, 
      \PDO::ATTR_PERSISTENT => true 
     ] 
    ]); 
}, true); 
Смежные вопросы