我想让输入字段仅出现在'create'表单中,而不是'update'表单中。我怎样才能做到这一点?
答案 0 :(得分:1)
您可以按照以下方式执行此操作
if ($model->isNewRecord){
echo $form->field($model, 'password')->passwordInput(['maxlength' => true, 'placeholder' => "Enter password"]);
}
答案 1 :(得分:0)
您可以使用$ model-> isNewRecord以多种创造性的方式,可以帮助您根据创建/更新做一些事情。
即。
隐藏字段
if ($model->isNewRecord){
echo $form->field($model, 'title')->textInput()
}
更改样式,类或属性,例如readonly
$isEditable = (model->isNewRecord);
$class = (model->isNewRecord)?'class-a':'class-b';
echo $form->field($model, 'title')->textInput([
'readonly'=>$isEditable,
'disabled' => $isEditable,
'class'=>$class])
更改标签
Html::submitButton( ($model->isNewRecord)
?'Create'
:'Update',
['class' => 'btn btn-success','id' => 'submit-btn',]);
显示其他按钮
echo ($model->isNewRecord)
? Html::a('Cancel', ['index'], ['class' => 'btn btn-warning'])
: Html::a('Close', ['otherplace'], ['class' => 'btn btn-primary']);
您可以使用$model->isNewRecord
进行大量游戏,并根据状态实际修改一些内容。
还有很多其他的东西。