2016-04-14 3 views
0

Итак, я пытаюсь создать функцию редактирования, и кажется, что когда я нажимаю кнопку редактирования, она перенаправляет меня на страницу редактирования с правильным идентификатором, но все входы пусты. любые идеи почему?Cakephp 3 входа пустые для редактирования

public function edit($id=null) { 

    $user =$this->Users->get($id); 

    if (!$this->Users->exists($user)) { 
     throw new NotFoundException(__('Invalid user')); 
    } 

    if ($this->request->is('post') || $this->request->is('put')) { 
     $user = $this->Users->patchEntity($user, $this->request->data); 

     $query = $this->Users->find('all', array('conditions' => array('id' => $id))); 
     $aros = $query->first()->toArray(); 

     $save = $this->Users->save($this->request->data); 

     if ($save) { 

      $this->Flash->success('The user has been saved'); 

     } else { 
      $this->Flash->error('The user could not be saved. Please, try again.'); 
     }} 

ответ

1

Вы не вставить весь необходимый код, здесь два догадок:

  1. Вы не устанавливаете объект с точкой зрения
  2. Если вы установите его, вы должны передать его на образуют создать(), а
  3. Вы пропускаете patchEntity() вызова, а также перед сохранением()
  4. Вам необходимо пройти объект для сохранения()

Я рекомендую вам учебники по основанию на book.cakephp.org, похоже, что вы не знаете, как это работает вообще на основе вставленного кода и того, что вы хотите сделать.

+1

Фактически он выполняет 'patchEntity', но затем он не передает объект методу' save'. – arilia

Смежные вопросы