当我提交表单时,我遇到了一些错误, 这是我的表单脚本,其中包含已发布的字段。
<?php $form = ActiveForm::begin([
'action'=>'userpermission/create',
]); ?>
<form method="post" action="<?php echo Yii::$app->getUrlManager()->createUrl('admin/userpermission/create')?>">
<ul class="list-unstyled">
<li>
<?= $form->field($model, 'idPermission')->checkboxList(ArrayHelper::map(Permission::find()->all(),"idPermission", "libelle", [
'onclick' => "$(this).val( $('input:checkbox:checked').val());",
'item' => function($index, $label, $name, $checked, $value) {
return "<label class='ckbox ckbox-primary col-md-4'><input type='checkbox' {$checked} name='{$name}' value='{$value}' tabindex='3'>{$label}</label>";
}
])) ?>
</li><br>
</ul>
<div class="form-group">
<?php Html::submitButton($model->isNewRecord ? 'Valider' : 'Create' ,['class' => $model->isNewRecord ? 'btn btn-primary','value'=>'Create', 'name'=>'submit']) ?>
</div>
<?php ActiveForm::end(); ?>
我的创建函数看起来像但是我得到了错误未定义的变量模型!
public function actionCreate()
{
$model = new Userpermission();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
print_r(Yii::$app->request->post());
exit;
return $this->redirect(['index', 'id' => $model->id]);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}
答案 0 :(得分:2)
第一关,您不需要 <form>
标记。
<?php $form = ActiveForm::begin([
'action'=>'userpermission/create',
]); ?>
使用相应的客户端验证为您创建并初始化表单。
可能的问题是由于未公开的</form>
,无论如何都是不必要的。
建议完全删除<form>
标记。并再次尝试,如果有任何问题,请让我知道错误。
还会在print_r(Yii::$app->request->post());
条件之前带来if
。
在您的函数中启用错误报告
error_reporting(E_ALL);
请将文件名提供给代码块。这样会更容易理解。