yii2 - yii表单报错

查看:87
本文介绍了yii2 - yii表单报错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

刚开始学习yii也不知道发生了什么交通事故

控制器

<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use app\models\JikeForm;
class JikeController extends Controller{
    public function actionIndex(){
        $model = new jikeForm();
        if ($model->load(Yii::$app->request->post()) && $model->validate()){
            return $this->render('index-two',['model'=>$model]);
        }else{
            return $this->render('index',['model'=>$model]);
        }
    }
}

模型

<?php
namespace app\models;
use Yii;
use yii\base\Model;
class JikeForm extends Model{
    public $name;
    public $pass;
    public $email;
    public $sex;
    public $edu;
    public $hobby;
    public $info;

    public function rules()
    {
        return [
          [['name','pass','email','sex','edu','hobby','info'],'required']
        ];
    }
}

视图

<?php
use yii\helpers\Html;
?>
<ul>
    <li><label><?php echo $model->name;?></label></li>
    <li><label><?= Html::encode($model->pass)?></label></li>
    <li><label><?= Html::encode($model->email)?></label></li>
    <li><label><?= Html::encode($model->sex)?></label></li>
    <li><label><?= Html::encode($model->edu)?></label></li>
    <li><label><?= Html::encode($model->hobby)?></label></li>
    <li><label><?= Html::encode($model->info)?></label></li>
</ul>

视图

<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php $form = ActiveForm::begin(); ?>

<?= $form->field($model,'name')->textInput()?>
<?= $form->field($model,'pass')->passwordInput()?>
<?= $form->field($model,'email')->textInput()?>
<?= $form->field($model,'sex')->radioList(['1'=>'男','2'=>'女'])?>
<?= $form->field($model,'edu')->dropDownList(['1'=>'大学','2'=>'中学','3'=>'小学'])?>
<?= $form->field($model,'hobby')->checkboxList(['1'=>'篮球','2'=>'足球'])?>
<?= $form->field($model,'info')?>

<div class="form-group">
    <?= Html::submitButton('submit',['class'=>'btn btn-primary'])?>
</div>

<?php $form = ActiveForm::end(); ?>

解决方案

你的视图中

Html::encode($model->hobby);//hobby是数组,不能用Html::encode方法

这篇关于yii2 - yii表单报错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆