首先创建model层,因为要使用表单小部件 所以要加载相应的组件,这里需要的组件有yii\widgets\ActiveForm yii\helpers\Html
接下来在model定义的class里 写方法,首先我们要定义需要使用表单小部件的name值
不多说上代码
'用户名',
‘pwd'=>'密码',
‘sex'=>'性别',
‘hobby'=>'爱好',
‘age'=>'年龄'
];
}
static public function dataarr($data){
$arr = array();
foreach($data as $key=>$value){
$arr[$value[‘kid']] = $value[‘kname'];
}
return $arr;
}
}在这个model里 有将英文表头转换中文的方法 attributuLabels
还有 我们处理单选多选还有下拉框值得方式 dataarr
接下来 我 们需要创建controller
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'];
}
}然后就是在我门的view层 展示出来
‘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) ?>= Html::submitButton(‘Login', [‘class' => ‘btn btn-primary']) ?>
下一篇:php怎样实现留言板功能