Yii2: Не передается одно значение в модель

531
01 марта 2017, 22:44

Я через миграцию добавил в таблицу одну колонку, name. В контроллере создаю модель, чтобы записать комментарии в нее из вьюхи. Но вот что происходит, в случае где передается 'text' параметр, то всё нормально добавляется в бд, но почему то name вообще не срабатывает. Я вардампил атрибуты которые приходят в модель, там всё что надо, кроме поля name. В POST всё приходит правильно, проверил. Если я нагло пропишу в контроллере $comments->name = "Своё значение"; - Оно запишется в БД. Из POST почему то нет. Comments наследуется от AR. Я уже борюсь час где-то, и не понимаю почему происходит так.

Вот код контроллера:

$comments = new Comment();
$comments->article_id = $_GET['id'];
    if($comments->load(Yii::$app->request->post())) {
        $comments->save();
        return $this->refresh();
    }

Код View:

 <?php $form = ActiveForm::begin(['class' =>"form-horizontal contact-form"]); ?>
                 <?= $form->field($comments, 'name')->textInput(['placeholder' => 'Name'])->label(false) ?>
                 <?= $form->field($comments, 'text')->textarea(['rows' => 5, 'placeholder' => "Write Message"])->label(false)?>
                 <?= Html2::submitButton('Post Comment', ['class' => 'btn send-btn']) ?>
 <?php ActiveForm::end(); ?>
Answer 1

Скорее всего, ваше поле name не сетится через метод load, так как отсутствует в правилах валидации. Если вам не нежно валидировать это поле никак, то в описании правил используйте SafeValidator:

public function rules()
{
    return [
        ['name', 'safe']
    ];
}
READ ALSO
Как отправить сообщение Whatsapp с помощью PHP

Как отправить сообщение Whatsapp с помощью PHP

ЗдравствуйтеПодскажите как отправить сообщение через Whatsapp с помощью PHP

1230
Правильный вывод статьи под категорию?

Правильный вывод статьи под категорию?

Здравствуйте, девелоперы!

255
Загрузка файла через форму

Загрузка файла через форму

Возникла следующая проблемаЗагружаются 2 картинки

385