В моих контроллеров Gii создает его часто можно увидеть следующее:Тестирование POST в Yii 2.0
if($model->load(Yii::$app->request->post()) && $model->save()){
//.....do something such as redirect after save....//
}else
{
//.....render the form in initial state.....//
}
Это работает, чтобы проверить, является ли POST, отправленные с моего вида & & модель, которую я с указанием сохранил опубликованную информацию (как я ее понимаю).
Я сделал это аналогично в контроллерах, которые я создал сам, но в некоторых ситуациях это условие обходит, поскольку одно или оба из этих условий терпят неудачу, и форма просто получает визуализацию в начальном состоянии после того, как я представил форму и я вижу, что POST проходит через сеть.
Может кто-нибудь объяснить, почему это условие не получится? Я считаю, что проблема связана с «Yii :: $ app-> request-> post()», потому что я удалил кусок «$ model-> save()» для проверки, и он все еще обходит условное выражение.
Пример кода, где он не в моем контроллере:
public function actionFreqopts()
{
$join = new FreqSubtypeJoin();
$options = new Frequency();
$model = new CreateCrystal();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
$model->insertFreqopts();
return $this->redirect(['fieldmap', 'id' => $join->id]);
} else {
return $this->render('freqopts', ['join' => $join, 'options' => $options]);
}
}
Моя первая мысль была, что я не указав правильный «$ модели» в том, что я пытаюсь сохранить отправленные данные в FreqSubtypeJoin()
в этот случай и $model
равен CreateCrystal();
, однако, даже если я изменяю модель в этом условном состоянии, она все равно терпит неудачу. Было бы полезно, если бы кто-то мог вкратце объяснить, что метод «загрузка» на самом деле делает в условиях непрофессионала, если это возможно.
Это очень полезно! Спасибо за продуманный ответ. Я изменил имена, поэтому я уверен, что это проблема, но я также мог видеть, как правила проверки могут ее отключить слишком, особенно если я использую «модель представления», которая тянет кучу базовых моделей без обработки эти свойства и правила правильно. – Scott
Надеюсь, что это работает @Scott. Когда у вас была возможность проверить его, если бы ответ сработал для вас, было бы полезно, если бы вы могли принять ответ, чтобы другие пользователи могли видеть, что было лучшим ответом. Благодаря! –