Heim >Backend-Entwicklung >PHP-Tutorial >Ausführliche Erläuterung der Verwendung von Yii2-Formular-Widgets

Ausführliche Erläuterung der Verwendung von Yii2-Formular-Widgets

*文
*文Original
2018-01-03 13:29:121609Durchsuche

Dieser Artikel führt Sie hauptsächlich in die Verwendung von Formular-Widgets in Yii 2.0 ein. Die Einführung im Artikel ist sehr detailliert und hat einen gewissen Referenz-Lernwert für alle, die sie beim Lernen oder Arbeiten benötigen. Ich hoffe, es hilft allen.

Vorwort

Dieser Artikel stellt hauptsächlich den relevanten Inhalt über die Verwendung von Formular-Widgets in yii 2.0 vor. Er wird für alle zum Nachschlagen und Studieren freigegeben Schauen wir uns unten die ausführliche Einführung an:

Verwendungsmethode

Erstellen Sie zunächst die Modellebene , Sie müssen die entsprechenden Komponenten laden, die hier benötigten Komponenten sind yiiwidgetsActiveForm yiihelpersHtml

Als nächstes müssen wir die vom Modell definierte Methode definieren um das Formular-Widget zu verwenden

Nein Lass uns mehr über den Code reden

<?php
namespace frontend\models;
use yii\base\Model;
use yii\widgets\ActiveForm;
use yii\helpers\Html;

class Form extends Model
{
    public $name;
    public $pwd;
    public $sex;
    public $hobby;
    public $age;
    public function rules(){
        return[
        
        ];
    }
    public function attributeLabels(){
        return[
        ‘name&#39;=>&#39;用户名&#39;,
        ‘pwd&#39;=>&#39;密码&#39;,
        ‘sex&#39;=>&#39;性别&#39;,
        ‘hobby&#39;=>&#39;爱好&#39;,
        ‘age&#39;=>&#39;年龄&#39;
        ];
    }
    static public function dataarr($data){
        $arr = array();
        foreach($data as $key=>$value){
        $arr[$value[‘kid&#39;]] = $value[‘kname&#39;];
        }
        return $arr;
    }
}

In diesem Modell gibt es eine Methode zum Konvertieren englischer Header in chinesische Attributbeschriftungen

Wir befassen uns auch mit Einzelauswahl, Mehrfachauswahl und Dropdown. Der Wert der Box ist dataarr

Als nächstes müssen wir den Controller erstellen

<?php

namespace frontend\controllers;
use yii\web\Controller;
use yii;
use db;
use frontend\models\Form;
class LoginController extends Controller
{
public function actionIndex(){
$sql = ‘select kid,kname from exam_tiku&#39;;
$data = yii::$app->db->createCommand($sql)->queryAll();
$arr = Form::dataarr($data);
//var_dump($arr);die;
$model = new Form();
return $this->render(‘index&#39;,[‘model&#39;=>$model,&#39;data&#39;=>$arr]);
}
public function actionAdd(){
$data = Yii::$app->request->post();
echo $name = $data[‘Form&#39;][‘name&#39;];
}
}

und dann in der Ansichtsebene meiner Tür anzeigen

<?php
/**
* Created by PhpStorm.
* User: jinlei
* Date: 2017/5/10
* Time: 9:41
*/

use yii\helpers\Html;
use yii\widgets\ActiveForm;

$form = ActiveForm::begin([
‘id&#39; => ‘login-form&#39;,
‘options&#39; => [‘class&#39; => ‘form-horizontal&#39;],
‘action&#39;=>&#39;?r=login/add&#39;,
‘method&#39;=>&#39;post&#39;,
]) ?>
<?= $form->field($model, ‘name&#39;) ?>
<?= $form->field($model, ‘pwd&#39;)->passwordInput() ?>
<?= $form->field($model, ‘sex&#39;)->radioList([‘0&#39;=>&#39;男&#39;,&#39;1&#39;=>&#39;女&#39;]) ?>
<?= $form->field($model, ‘hobby&#39;)->checkboxList([‘basketball&#39;=>&#39;篮球&#39;,&#39;baseball&#39;=>&#39;棒球&#39;,&#39;swim&#39;=>&#39;游泳&#39;]) ?>
<?= $form->field($model, ‘age&#39;)->dropDownList($data) ?>

<p class=”form-group”>
<p class=”col-lg-offset-1 col-lg-11″>
<?= Html::submitButton(‘Login&#39;, [‘class&#39; => ‘btn btn-primary&#39;]) ?>
</p>
</p>
<?php ActiveForm::end() ?>

Auf dieser Seite zeigen wir das Textfeld Passwortfeld Einzelauswahl Mehrfach -Wählen Sie das Dropdown-Feld aus, in dem die Daten des Dropdown-Felds aus der Datenbank gelesen werden

Verwandte Empfehlungen:

Yii2 implementiert die QQ-Verbindung anmelden

Yii2 einfache Analyse mit Cache

Yii2 implementiert die Rbac-Berechtigungssteuerung

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Verwendung von Yii2-Formular-Widgets. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn