阿江 2017-09-28 17:12:47 2371次浏览 0条回复 0 0 0

说明

学习Yii Framework 2易2框架的过程是漫长的也是充满乐趣的以下是我学习Yii2框架时对官网英文资料(请参见原文网址)的代码实现提供了较完整的代码供你参考不妥之处请多多指正

原文网址:

http://www.yiiframework.com/doc-2.0/guide-start-forms.html

标题:使用表单ActiveForm

yii\base\Model 被用于普通模型类的父类并与数据表无关。 yii\db\ActiveRecord 通常是普通模型类的父类但与数据表有关联(注:yii\db\ActiveRecord 类其实也是继承自 yii\base\Model,只是增加了数据库处理。

文件位置:
//D:\phpwork\basic\models\EntryForm.php
源代码:
namespace app\models;
use yii\base\Model;
class EntryForm extends Model{
    public $name;
    public $email;
    public function rules(){
        return [
            [['name','email'],'required'],
            ['email','email'],
        ];
    }
}
文件位置:
//D:\phpwork\basic\controllers\SiteController.php
源代码:
......
use app\models\EntryForm;
class SiteController extends Controller
{
	......
    public function actionEntry(){
        $model=new EntryForm;
        if($model->load(Yii::$app->request->post())&&$model->validate()){
            return $this->render('entry-confirm',['model'=>$model]);
        }else{
            return $this->render('entry',['model'=>$model]);
        }
    }
}
文件位置:
//D:\phpwork\basic\views\site\entry.php
源代码:
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
?>
input form:<br>
<?php $form=ActiveForm::begin();?>
    <?=$form->field($model,'name')?>
    <?=$form->field($model,'email')?>
<?=Html::submitButton('Submit',['class'=>'btn btn-primary'])?>
<?php ActiveForm::end();?>

<!-- //D:\phpwork\basic\views\site\entry_confirm.php -->
<?php
use yii\helpers\Html;
?>
you enter:<br>
<ul>
    <li>name:<?=Html::encode($model->name)?></li>
    <li>name:<?=Html::encode($model->email)?></li>
</ul>
测试
<?
//访问网址:
http://localhost:8081/web/index.php?r=site/entry
/*
you enter:
    name:adsfasf
    name:asdfdsf@qq.com
*/

(全文完)

    没有找到数据。
您需要登录后才可以回复。登录 | 立即注册