将单个数据保存到数据库中 - CakePHP

时间:2016-10-12 08:15:28

标签: cakephp

我试着做我认为的所有事情,我不知道该怎么做。我读过Cake的书......

我不知道如何在我的数据库中的1列中添加此值。 当我添加'Task'时,我想在'created_by'列中添加我的'name'。

添加任务中的代码:

public function add()
{
    $task = $this->Tasks->newEntity();
    if ($this->request->is('post')) {
        $task = $this->Tasks->patchEntity($task, $this->request->data);

        if ($this->Tasks->save($task)) {
            $this->Flash->success(__('The task has been saved.'));

            return $this->redirect(['action' => 'index']);
        } else {
            $this->Flash->error(__('The task could not be saved. Please, try again.'));
        }
    }
    $users = $this->Tasks->Users->find('list', ['limit' => 200]);
    $this->set(compact('task', 'users'));
    $this->set('_serialize', ['task']);
}

我什么时候写

echo $this->Auth->user('name');
die();

我的名字是'Mariusz'。 现在我想将它添加到'created_by'列中。我想我需要更改这一行:

$task = $this->Tasks->patchEntity($task, $this->request->data);

但我不知道怎么做。在蛋糕书有信息

  

$ articles-> patchEntity($ article,$ this-> request-> data(),[       'validate'=> “自定义”,       'associated'=> ['Tags','Comments.Users'=> ['validate'=> '注册']]   ]);

但我认为不好。

我创造了这种关系 用户 - > has_many - >任务 任务 - > belongs_To - >用户

1 个答案:

答案 0 :(得分:1)

请试试以下代码:

$data['name']=$this->Auth->user('name');
$task = $this->Tasks->patchEntity($task, $data);

if ($this->Tasks->save($task)) {