Dieser Artikel stellt Ihnen hauptsächlich vor, wie Sie die Formular-Widgets in Yii 2.0 verwenden. Die Einführung im Artikel ist sehr detailliert und hat einen gewissen Referenz-Lernwert für alle, die einen Blick darauf werfen möchten .
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 Erzähl mir mehr über den Code
<?php /** * Created by PhpStorm. * User: jinlei * Date: 2017/5/10 * Time: 9:35 */ 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'=>'用户名', ‘pwd'=>'密码', ‘sex'=>'性别', ‘hobby'=>'爱好', ‘age'=>'年龄' ]; } static public function dataarr($data){ $arr = array(); foreach($data as $key=>$value){ $arr[$value[‘kid']] = $value[‘kname']; } return $arr; } }
In diesem Modell gibt es eine Methode um englische Überschriften in chinesische Attribute zu konvertieren
Außerdem behandeln wir Einzelauswahl-, Mehrfachauswahl- und Dropdown-Felder auf die gleiche Weise wie Datenarr
Als nächstes Controller muss erstellt werden
<?php /** * Created by PhpStorm. * User: jinlei * Date: 2017/5/10 * Time: 9:39 */ 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'; $data = yii::$app->db->createCommand($sql)->queryAll(); $arr = Form::dataarr($data); //var_dump($arr);die; $model = new Form(); return $this->render(‘index',[‘model'=>$model,'data'=>$arr]); } public function actionAdd(){ $data = Yii::$app->request->post(); echo $name = $data[‘Form'][‘name']; } }
Dann wird er auf der Ansichtsebene unserer Tür angezeigt
<?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' => ‘login-form', ‘options' => [‘class' => ‘form-horizontal'], ‘action'=>'?r=login/add', ‘method'=>'post', ]) ?> <?= $form->field($model, ‘name') ?> <?= $form->field($model, ‘pwd')->passwordInput() ?> <?= $form->field($model, ‘sex')->radioList([‘0'=>'男','1'=>'女']) ?> <?= $form->field($model, ‘hobby')->checkboxList([‘basketball'=>'篮球','baseball'=>'棒球','swim'=>'游泳']) ?> <?= $form->field($model, ‘age')->dropDownList($data) ?> <p class=”form-group”> <p class=”col-lg-offset-1 col-lg-11″> <?= Html::submitButton(‘Login', [‘class' => ‘btn btn-primary']) ?> </p> </p> <?php ActiveForm::end() ?>
Auf dieser Seite zeigen wir das Textfeld Passwortfeld mit Mehrfachauswahl. Wählen Sie das Dropdown-Feld aus, in dem die Daten des Dropdown-Felds aus der Datenbank gelesen werden
Das obige ist der detaillierte Inhalt vonEinführung in Formular-Widgets in yii 2.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!