欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Yii使用Forms

1.創(chuàng )建模型(model)

a.加入基類(lèi)

     use yii/base/Model

b.創(chuàng )建類(lèi)繼承自基類(lèi)

c.創(chuàng )建所需要的變量

e.定義規則

f.注意里面用[]括起來(lái)

例如:

<?phpnamespace app\models;use yii\base\Model;    //無(wú)數據庫操作class EntryForm extends Model{    public $name;    public $email;    public function rules()    {        return [            [['name', 'email'], 'required'],            ['email', 'email'],        ];    }}

該類(lèi)繼承自Yii 提供的一個(gè)基類(lèi) [[yii\base\Model]],該基類(lèi)通常用來(lái)表示數據

補充:[[yii\base\Model]] 被用于普通模型類(lèi)的父類(lèi)并與數據表無(wú)關(guān)。[[yii\db\ActiveRecord]] 通常是普通模型類(lèi)的父類(lèi)但與數據表有關(guān)聯(lián)(譯注:[[yii\db\ActiveRecord]] 類(lèi)其實(shí)也是繼承自 [[yii\base\Model]],增加了數據庫處理)。

EntryForm 類(lèi)包含 nameemail 兩個(gè)公共成員,用來(lái)儲存用戶(hù)輸入的數據。它還包含一個(gè)名為 rules() 的方法,用來(lái)返回數據驗證規則的集合。上面聲明的驗證規則表示:

  • nameemail 值都是必須的
  • email 的值必須滿(mǎn)足email規則驗證

如果你有一個(gè)處理用戶(hù)提交數據的 EntryForm 對象,你可以調用它的 [[yii\base\Model::validate()|validate()]] 方法觸發(fā)數據驗證。如果有數據驗證失敗,將把 [[yii\base\Model::hasErrors|hasErrors]] 屬性設為 ture,想要知道具體發(fā)生什么錯誤就調用 [[yii\base\Model::getErrors|getErrors]]。

<?php$model = new EntryForm();$model->name = 'Qiang';$model->email = 'bad';if ($model->validate()) {    // 驗證成功!} else {    // 失??!    // 使用 $model->getErrors() 獲取錯誤詳情}

2.創(chuàng )建操作(controller)

下面你得在 site 控制器中創(chuàng )建一個(gè) entry 操作用于新建的模型。

<?phpnamespace app\controllers;use Yii;use yii\web\Controller;use app\models\EntryForm;class SiteController extends Controller{    // ...其它代碼...    public function actionEntry()    {        $model = new EntryForm;        if ($model->load(Yii::$app->request->post()) && $model->validate()) {            // 驗證 $model 收到的數據            // 做些有意義的事 ...            return $this->render('entry-confirm', ['model' => $model]);        } else {            // 無(wú)論是初始化顯示還是數據驗證錯誤            return $this->render('entry', ['model' => $model]);        }    }}

該操作首先創(chuàng )建了一個(gè) EntryForm 對象。然后嘗試從 $_POST 搜集用戶(hù)提交的數據,由 Yii 的 [[yii\web\Request::post()]] 方法負責搜集。如果模型被成功填充數據(也就是說(shuō)用戶(hù)已經(jīng)提交了 HTML 表單),操作將調用 [[yii\base\Model::validate()|validate()]] 去確保用戶(hù)提交的是有效數據。

補充:表達式 Yii::$app 代表應用實(shí)例,它是一個(gè)全局可訪(fǎng)問(wèn)的單例。同時(shí)它也是一個(gè)服務(wù)定位器,能提供request,response,db 等等特定功能的組件。在上面的代碼里就是使用 request 組件來(lái)訪(fǎng)問(wèn)應用實(shí)例收到的 $_POST 數據。

用戶(hù)提交表單后,操作將會(huì )渲染一個(gè)名為 entry-confirm 的視圖去確認用戶(hù)輸入的數據。如果沒(méi)填表單就提交,或數據包含錯誤(譯者:如 email 格式不對),entry 視圖將會(huì )渲染輸出,連同表單一起輸出的還有驗證錯誤的詳細信息。

注意:在這個(gè)簡(jiǎn)單例子里我們只是呈現了有效數據的確認頁(yè)面。實(shí)踐中你應該考慮使用 [[yii\web\Controller::refresh()|refresh()]] 或 [[yii\web\Controller::redirect()|redirect()]] 去避免表單重復提交問(wèn)題。

 

3.創(chuàng )建視圖

最后創(chuàng )建兩個(gè)視圖文件 entry-confirmentry。他們會(huì )被剛才創(chuàng )建的 entry 操作渲染。

entry-confirm 視圖簡(jiǎn)單地顯示提交的 name 和 email 數據。視圖文件保存在 views/site/entry-confirm.php。

<?phpuse yii\helpers\Html;?><p>You have entered the following information:</p><ul>    <li><label>Name</label>: <?= Html::encode($model->name) ?></li>    <li><label>Email</label>: <?= Html::encode($model->email) ?></li></ul>

entry 視圖顯示一個(gè) HTML 表單。視圖文件保存在 views/site/entry.php

<?phpuse yii\helpers\Html;use yii\widgets\ActiveForm;?><?php $form = ActiveForm::begin(); ?>    <?= $form->field($model, 'name') ?>    <?= $form->field($model, 'email') ?>    <div class="form-group">        <?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>    </div><?php ActiveForm::end(); ?>

視圖使用了一個(gè)功能強大的小部件 [[yii\widgets\ActiveForm|ActiveForm]] 去生成 HTML 表單。其中的 begin()end() 分別用來(lái)渲染表單的開(kāi)始和關(guān)閉標簽。在這兩個(gè)方法之間使用了 [[yii\widgets\ActiveForm::field()|field()]] 方法去創(chuàng )建輸入框。第一個(gè)輸入框用于 “name”,第二個(gè)輸入框用于 “email”。之后使用 [[yii\helpers\Html::submitButton()]] 方法生成提交按鈕。

use yii\helpers\Html;use yii\wigets\ActiveForm;

          記住使用小部件,需要引入這個(gè)兩個(gè)

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
創(chuàng )建模型
Yii一些簡(jiǎn)單用法
Yii小部件(Widget)
YII 與現用框架(matrixPHP)的區別(待續。。。。。。)
yii中數據模型的使用
為您的Web項目構建一個(gè)簡(jiǎn)單的JSON控制器
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久