2015-08-05 5 views
0

Я работаю над страницей, которая может обновить агента по продажам по определенному заказу. Я создал список опций и выпадающий список создан.Форма CakePHP не публикуется

Heres в контроллере:

$order = $this->Order->read(null,$id); 
    $this->set("order",$order); 

    if ($this->request->is("post")) { 
     if($this->Order->save($this->request->data)) { 
      $this->Session->setFlash("Sales Agent Updated"); 
     } 
    } 

Heres вид:

echo $this->Form->create("Order"); 
     echo $this->Form->input("OrderID"); 
     echo $this->Form->input("UserID"); 
     echo $this->Form->submit("Submit"); 
    echo $this->Form->end(); 

Когда я отправить данные, по-видимому, что данные сохраняются, (сообщение вспышка установлена).

Однако, когда я затем задаю поля с данными, которые уже находятся в базе данных, все это внезапно даже не публикуется. (Я кладу отладки после reques-> является ("пост) состояние, которое не показывает вверх после отправки).

$order = $this->Order->read(null,$id); 
    $this->set("order",$order); 

    if ($this->request->is("post")) { 
     if($this->Order->save($this->request->data)) { 
      $this->Session->setFlash("Sales Agent Updated"); 
     } 
    } 

    if (!$this->request->data) { 
     $this->request->data = $order; 
    } 

Входные поля правильно заполнены заранее, но теперь форма даже не пост.

знает, что не так никто

Благодаря

+0

'это даже не сообщение' - так что происходит? Проверьте, какие запросы отправляет ваш браузер, т. Е. Вкладка сети в средствах отладки вашего браузера. – AD7six

+0

это сообщение, но контроллер не распознает его – Anthony

+0

Не полезно, что это значит? Прочитайте остальную часть моего первого комментария. – AD7six

ответ

0

Обновить код контроллер?!

$order = $this->Order->read(null,$id); 
$this->set("order",$order); 

if ($this->request->is('post') || $this->request->is('put')) { 
    if($this->Order->save($this->request->data)) { 
     $this->Session->setFlash("Sales Agent Updated"); 
    } 
} 

Теперь поставьте отладочную информацию после состояния reques->is('post'), которое покажет, что вам нужно показать.

+0

[Неверно] (https://github.com/cakephp/cakephp/blob/2.8/lib/Cake /View/Helper/FormHelper.php#L314), так оно и было, код в ответе ничего не изменит, поскольку он не будет запросом PUT (браузеры не отправляют запросы PUT). – AD7six

+0

если да, то у вас есть еще одна проблема. покажите нам контроллер и просмотр. –

+0

Я не ОП - вы поймете мои комментарии к вопросу, учитывая, что, предполагая, что форма cakephp на самом деле используется, это будет сообщение. – AD7six

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