YII 框架的表单小部件,包含的都是 数据库里面有的字段,如果没有,你又用了小部件,把随便定义的变量,写在里面,就会报错,说是变量没定义。
类似于这样:
<div class="col-md-4">
<?= $form->field($model, 'ban')->label('经常访问板块')->textInput(['disabled' => '']) ?>
</div>
$ban 是数据库没有的字段。
既然非常想在<?= $form ... ?> 用这个变量,可以这样解决
找到这个$model 模型实例那个数据库,他继承的父类是那个,直到这个 class *** extends yiidbActiveRecord
在该类下面定义 public $ban; 然后再在该类的规则rule()中,约束一下。
在Controller层, 就可以调用了 $model->ban = @@@
然后 渲染到前端就行了。