CakePHP的博客教程如何节省当前和修改时间?

时间:2013-12-12 05:15:17

标签: cakephp cakephp-2.1

我刚开始学习CakePHP,我开始使用官方博客教程。到目前为止一直很好,但我没有得到当前和修改时间如何在db中保存,因为在视图和控制器中都没有任何指向这些字段的行。

这是添加的PostsController.php代码:

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'));
            }
            else
            {
                $this->Session->setFlash(__('Unable to add your post.'));
            }
        }
    }

这是add.ctp的视图代码:

<!-- File: /app/View/Posts/add.ctp -->
<?php echo $this->Html->link('Home', 'index/home'); ?>
<h1>Add Posts</h1>
<?php
echo $this->Form->create('Post');
echo $this->Form->input('title');
echo $this->Form->input('body', array('rows' => '3'));
echo $this->Form->submit('Add Post', array('name' => 'add_post'));
//echo $this->Form->end('Save Post');
?>

有人请告诉我哪一行节省了当前时间?非常感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

默认的Cake父模型中有一个隐藏函数,用于检查名称为“created”和“modified”的字段,并自动更新值。

在/lib/Cake/Model/Model.php中搜索字符串'modified',您会看到很多对此的引用。

我不确定这是如何记录的,我在调试一些时髦的保存行为时遇到了它。

在我的系统中,在找到这个小宝石之前,我确定了'created_at'和'modified_at'字段。

编辑:这在此处记录: http://book.cakephp.org/2.0/en/models/saving-your-data.html#using-created-and-modified

答案 1 :(得分:0)

检查AppModel.php是否包含函数save(){}和UpdateAll(){}。接下来检查mysql中创建和修改字段的数据类型。然后修改你的问题以便更清晰。