首页 > 技术文章 > Yii2 Lesson - 03 Forms in Yii

json123 2017-06-13 23:43 原文

实现一个表单功能,前后端都附带验证约束。


在SiteController.php中設置方法

    public function actionThree()
    {   
        $model = new Three();
        if($model->load(Yii::$app->request->post()) && $model->validate()) {
            Yii::$app->session->setFlash('success','Do it easy,Lesson 3');
        }   
        return $this->render('three',['model'=>$model]); 
    } 

新建一個模型類 Three.php

<?php
namespace app\models;
use yii\base\Model;

class Three extends Model{
    public $name;
    public $email;

  public function rules()
  {
    return [
              [['name','email'],'required'],
              ['email','email'],
           ];
  }
}

定一个视图文件 views/site/three.php

<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
<?php
        if(Yii::$app->session->hasFlash('success')){
            echo Yii::$app->session->getFlash('success');
        }

?>
<?php  $form = ActiveForm::begin();?>
<?= $form->field($model,'name');?>
<?= $form->field($model,'email');?>
<?= Html::submitButton('submit',['class'=>'btn btn-success']);?>
~                                                                   

commit没反应注意检查rules的数组格式 。浪费半小时

推荐阅读