【YII2学习笔记】20150727-1
2015-07-27 14:40
796 查看
一、需包含组件
1.控制器
2.视图
二、生成表单
三、控制器处理
四、模型处理
五、VIEW处理
六、HTML页面
范例1.:
文本框:textInput();
密码框:passwordInput();
单选框:radio(),radioList();
复选框:checkbox(),checkboxList();
下拉框:dropDownList();
隐藏域:hiddenInput();
文本域:textarea(['rows'=>3]);
文件上传:fileInput();
提交按钮:submitButton();
重置按钮:resetButtun();
范例2:
*范例转载:http://www.yiichina.com/tutorial/341
范例3:
*范例转载:http://www.kuitao8.com/20150321/3638.shtml
七、框架源码所在(更详细看)
yii\vendor\yiisoft\yii2\widgets\ActiveField.php
yii\vendor\yiisoft\yii2\widgets\ActiveForm.php
1.控制器
use Yii; use yii\web\Controller; use app\models\对应Form的模型;
2.视图
use yii\helpers\Html; use yii\widgets\ActiveForm;
二、生成表单
<?php $form = ActiveForm::begin(); ?> <?= $form->field($model, 'name') ?> <?= $form->field($model, 'sex')->dropDownList(['0'=>'男','1'=>'女']) ?> <?= $form->field($model, 'content')->textarea() ?> <div class="form-group"> <?= Html::submitButton('提交', ['class' => 'btn btn-info']) ?> </div> <?php ActiveForm::end(); ?>
三、控制器处理
$model = new EntryForm(); if ($model->validate()) { // 验证成功! } else { // 失败! // 使用 $model->getErrors() 获取错误详情 }
四、模型处理
namespace app\models; use yii\base\Model; class AddForm extends Model{ public $name; //前台所包含的字段 public $sex; public $content; public function rules(){ return [ [['name', 'sex', 'content'], 'required'], ['name','string','length'=>[2,10]],
//['email','eamil','message'=>'这里必须邮箱'], //['name','url','defaultScheme'=>'http','message'=>'xxx'], ]; } public function attributeLabels(){ return [ <pre name="code" class="php"> <span style="font-family: Arial, Helvetica, sans-serif;">'name'=>'姓名',</span>'sex'=>'性别', 'content'=>'内容' ;}
五、VIEW处理
<?php $form = ActiveForm::begin(); ?> //默认样式<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
<span style="font-family: Arial, Helvetica, sans-serif;"> <?= $form->field($model, 'name') ?></span>
<?= $form->field($model, 'sex')->dropDownList(['0'=>'男','1'=>'女']) ?> <?= $form->field($model, 'content')->textarea() ?> <div class="form-group"> <?= Html::submitButton('提交', ['class' => 'btn btn-info']) ?> </div> <?php ActiveForm::end(); ?>
六、HTML页面
<form class="form-horizontal" action="" method="post"> <div class="form-group"> <label for="name" class="col-sm-2 control-label">昵称:</label> <div class="col-sm-10"> <input type="text" class="form-control" name="name" id="name" placeholder="输入昵称"> </div> </div> <div class="form-group"> <label for="name" class="col-sm-2 control-label">性别:</label> <div class="col-sm-10"> <select name="sex" class="form-control"> <option>男</option> <option>女</option> <option>未知生物</option> <option>CP</option> </select> </div> </div> <div class="form-group"> <label for="name" class="col-sm-2 control-label">留言内容:</label> <div class="col-sm-10"> <textarea name="content" class="form-control" rows="3"></textarea> </div> </div> <div class="form-group"> <div class="col-sm-offset-4 col-sm-10"> <input class="btn btn-info" type="submit" value="提交"> </div> </div> </form>
范例1.:
文本框:textInput();
密码框:passwordInput();
单选框:radio(),radioList();
复选框:checkbox(),checkboxList();
下拉框:dropDownList();
隐藏域:hiddenInput();
文本域:textarea(['rows'=>3]);
文件上传:fileInput();
提交按钮:submitButton();
重置按钮:resetButtun();
范例2:
<?php $form = ActiveForm::begin(['action' => ['test/getpost'],'method'=>'post',]); ?> <? echo $form->field($model, 'username')->textInput(['maxlength' => 20]) ?> <? echo $form->field($model, 'password')->passwordInput(['maxlength' => 20]) ?> <? echo $form->field($model, 'sex')->radioList(['1'=>'男','0'=>'女']) ?> <? echo $form->field($model, 'edu')->dropDownList(['1'=>'大学','2'=>'高中','3'=>'初中'], ['prompt'=>'请选择','style'=>'width:120px']) ?> <? echo $form->field($model, 'file')->fileInput() ?> <? echo $form->field($model, 'hobby')->checkboxList(['0'=>'篮球','1'=>'足球','2'=>'羽毛球','3'=>'乒乓球']) ?> <? echo $form->field($model, 'info')->textarea(['rows'=>3]) ?> <? echo $form->field($model, 'userid')->hiddenInput(['value'=>3]) ?> <? echo Html::submitButton('提交', ['class'=>'btn btn-primary','name' =>'submit-button']) ?> <? echo Html::resetButton('重置', ['class'=>'btn btn-primary','name' =>'submit-button']) ?> <?php ActiveForm::end(); ?>
*范例转载:http://www.yiichina.com/tutorial/341
范例3:
//$form = ActiveForm::begin(); //默认的FORM样式 $form = ActiveForm::begin([ //对FORM进行样式修改添加 'id' => 'active-form', 'options' => [ 'class' => 'form-horizontal', 'enctype' => 'multipart/form-data' ], ])
*范例转载:http://www.kuitao8.com/20150321/3638.shtml
七、框架源码所在(更详细看)
yii\vendor\yiisoft\yii2\widgets\ActiveField.php
yii\vendor\yiisoft\yii2\widgets\ActiveForm.php
相关文章推荐
- ThinkPHP 多语言支持的配置与使用
- php文件,文件夹
- php+mysql的分页进行封装调用
- 提高PHP编程效率的53个要点
- FragmentActivity、Fragment、FragmentPagerAdapter与FragmentManager
- 11. PHP 运算符
- php 写日志函数
- ContentProvider读取联系人数据和ContentObsever实时短信监听
- windows 安装composer 报SSL错误的解决方式
- Hacked VisualSVN Server by PHP to allow user change password
- 在新版本的 PHP 中使用旧的 PHP 代码
- FTP Download File By Some Order List
- 【php】在Windows2003下的IIS配置php5.4
- thinkphp url重写规则及wamp配置
- 用&& php写的条件语句-三种条件语句
- Thinkphp M 中的 where 失效问题
- ThinkPHP模型详解
- php mysqli扩展之预处理
- php 关于使用七牛云存储
- Laravel