Cakephp博客教程 - Controller Add()动作

时间:2013-12-14 02:06:38

标签: php cakephp cakephp-2.0

在添加帖子add()操作部分

中的cakephp博客教程中

http://book.cakephp.org/2.0/en/tutorials-and-examples/blog/part-two.html

我无法理解这个$this->Post->create();的作用,我试图删除那行代码,它仍然可以正常工作。那行代码做了什么?

public function add() {
    if ($this->request->is('post')) {
        $this->Post->create();
        if ($this->Post->save($this->request->data)) {
            $this->Session->setFlash(__('Your post has been saved.'));
            return $this->redirect(array('action' => 'index'));
        }
        $this->Session->setFlash(__('Unable to add your post.'));
    }
}   

1 个答案:

答案 0 :(得分:0)

它创建该模型的新实例,然后在数据库表中创建一条新记录。

添加数据时无需调用,但通常建议使用,因为如果您之前已引用任何其他记录,则在保存时会覆盖该数据。调用create可确保您有一个新的平板来设置数据。

保存数据的常规过程:

  • 创建
  • 设置($ your_data)
  • 保存