Передача значений формы из элемента в таблицу в cakephp

У меня есть система ИТ-запросов, где пользователи добавляют свои запросы. Когда я просматриваю запрос, я должен иметь возможность добавить ответ на запрос. Ответ должен быть добавлен в таблицу с именем it_query_responses, а имя модели - ItQueryResponse.

Через элемент я включаю ответ add в view.ctp для ИТ-запросов. Проблема, с которой я столкнулся сейчас, заключается в том, что элемент не сохраняет ответ в таблицу it_query_responses.

Вот моя функция добавления для контроллера ответа

public function add() {
    if ($this->request->is('post')) {
        $this->ItQueryResponse->create();
        if ($this->ItQueryResponse->save($this->request->data)) {
            $this->Session->setFlash(__('The it query response has been saved'));
            $this->redirect(array('action' => 'index'));
        } else {
            $this->Session->setFlash(__('The it query response could not be saved. Please, try again.'));
        }
    }
    $itQueries = $this->ItQueryResponse->ItQuery->find('list');
    $hrEmployees = $this->ItQueryResponse->HrEmployee->find('list');
    $itQueryStatuses = $this->ItQueryResponse->ItQueryStatus->find('list');
    $this->set(compact('itQueries', 'hrEmployees', 'itQueryStatuses'));
}

и вот как я называю свой элемент после закрытия div в view.ctp

element('ItQueryResponses/add'); ?>

вот код для моего элемента

Form->create('ItQueryResponse'); ?>


Form->input('it_query_id');
echo $this->Form->input('hr_employee_id');
echo $this->Form->input('response');
echo $this->Form->input('it_query_status_id');
?>

Form->end(__('Submit')); ?>   

Заранее спасибо.

 Nizam20 нояб. 2014 г., 05:52
Хотите поделиться своей формой также?
 Victor M20 февр. 2013 г., 16:01
@ Danhamzzz Я отредактировал код согласно запросу.
 Dunhamzzz20 февр. 2013 г., 16:08
Ваши флеш сообщения появляются? Если да, то какой? Попробуйте сбросить$this->ItQueryResponse->invalidFields()
 Victor M20 февр. 2013 г., 16:46
Это для строгого добавления записи в таблицу. На более позднем этапе я также хотел бы повторить ответ ниже представления запроса, используя div. Надеюсь, что это имеет смысл.
 Dunhamzzz20 февр. 2013 г., 15:47
Избавьтесь от верхнего блока кода из вопросов (этосовершенно не имеет значения, как вы отображаете форму), и вместо этого покажите нам логику сохранения в вашемItQueryResponse Контроллер / модель.
 Dunhamzzz20 февр. 2013 г., 16:48
Хорошо, я бы порекомендовал отладить эту строку построчно, используя что-то простоеdie('here'); чтобы увидеть поток логики. Я подозреваю что$this->request->is('post') ISN»Прохожу, если тыне получать флеш-сообщения.
 Victor M20 февр. 2013 г., 16:19
@Dunhamzzz - не показывать флеш-сообщения, даже если я содержал массив validationErrors с использованием $ this->ItQueryResponse->invalidFields ()
 Dunhamzzz20 февр. 2013 г., 16:40
Это для строгого добавления поля? CakeRequest будет использоватьput вместоpost если идентификатор передан, поскольку он думает, что данные редактируются.

Ответы на вопрос(0)

Ваш ответ на вопрос