2016-08-26 51 views
1

如何在ORM更新后将相同的数据插入数据库? 例如我有功能保存(),并在此功能我有更新,它的工作,但我不知道如何插入旧的更新数据。我的意思是它应该在数据库中创建历史记录。我只希望你能理解我的意思。感谢帮助。kohana ----自动插入

public function save(Validation $validation = NULL) 
{ 
    if ($this->loaded()) { 
     // UPDATE TRIGGER 

     DB::update($this->_table_name) 
      ->set(array('ud_status' => 'D')) 
      ->where('ud_status', '=', 'A') 
      ->where('ud_uId', '=', $this->ud_uId) 
      ->execute($this->_db); 

     return false; 
    } else { 
     // INSERT TRIGGER 
     return parent::save($validation); 
    } 
} 
+0

WOW!很长一段时间我没有听说Kohana ... – felipsmartins

回答

0
$query = DB::insert('users', array('username', 'password'))->values(array('fred', '[email protected]')); 

https://kohanaframework.org/3.3/guide/database/query/builder#insert

+0

我已经知道这个,但我需要使用这个函数就像在MySQL的触发器,所以它应该首先更新和只改变状态为'D'值,下一个应该插入即使只使用表单中的更新后,也应该添加新的数据触发新的记录,但我仍然不确定如何动态地将数据从视图传输到模型,但我不知道如何。 O.o – R0ck99