Добрый день!
Создаю выпадающий список.
<?= $f->field($form, 'block')->dropDownList([
7 => '7 дней',
14 => '14 дней',
30 => '30 дней',
0 => 'Полная',
])->label('Срок'); ?>
Затем смотрю на результат
public function addBlock($user) {
var_dump($this->block);die;
}
В ответе вижу NULL
Параллельно есть текстовой ввод и от него ответ приходит.
Модели формы выглядит так:
<?php
namespace app\models;
use Yii;
use yii\base\Model;
class BlockForm extends Model {
public $block;
public $reason;
public function rules() {
return [
['reason', 'required', 'message' => 'Укажите причину блокировки'],
];
}
public function addBlock($user) {
//$time = time() + 60*60*24*$this->block;
var_dump($this->block);
var_dump($this->reason);die;
/*$block = new Block();
$block->iduser = $user->id;
$block->who = Yii::$app->user->identity->id;
$block->reason = $this->reason;
$block->time = time();
if($this->block > 0){ $block->timeblock = $time; }
else { $block->timeblock = 0; }
return $block->save();*/
}
}
В контроллере:
public function actionBlock() {
$form = new BlockForm;
$id = Yii::$app->request->get('id');
$user = User::findOne($id);
if($form->load(Yii::$app->request->post()) && $form->validate() && $form->addBlock($user)) {
//var_dump($form); die;
//return $this->redirect('/admin/user/blockall');
}
return $this->render('block', [
'form' => $form,
'id' => $id,
'user' => $user,
]);
}