利用助手(widget)在页面实现表单

控制器中

<?php

class YiiFormController extends Controller

{

public function actionIndex()

{

$bbsInfoModel = new BbsInfo();//实例化当前要添加数据库中表的模型

//这个array的参数值是让页面中的表单用的

$this->render("index",array("bbsInfoModel"=>$bbsInfoModel));//注意这个参数

}

}

?>

视图中

(注:通过查看yiilite.php得知,'CActiveForm' => '/web/widgets/CActiveForm.php')

<?php

//表单的开始,并设置相关的form属性

$form = $this->beginWidget("CActiveForm",array(

"action"=>"index.php?r=yiiform/add",

"method"=>"post",

"htmlOptions"=>array(

"enctype"=>"multipart/form-data",

"name"=>"frm",

"onsubmit"=>"return checkAdd()"

)

));

?>

标 签:<?php echo $form->label($bbsInfoModel,"标签名") ?>//label方法来源于CActiveForm类中的label方法

文本框:<?php echo $form->textField($bbsInfoModel,"表中的字段名",array("size"=>20,"maxlength"=>4))?>//textField方法来源于CActiveForm类中的textField方法

<?php $this->endWidget(); ?>//表单的结束

模型中

<?php

class BbsInfo extends CActiveRecord

{

//通过调用CActiveRecord父类的方法来获得一个当前模型对象

public static function model($className=__CLASS__)

{

return parent::model($className);

}

//指定当前模型对应的表名

public function tableName()

{

//return "bbsInfo";//完整的表名

return "{{bbsInfo}}";//省略前缀的表名

}

//该方法对应yii表单中的标签$form->label(模型对应,"id")

public function attributeLabels()

{

//注意这个返回值,与上边的视图中的label标签对应

return array(

"title_id"=>"标题",

"clickTimes_id"=>"点击次数"

);

}

}

?>

YII中的表单挂件的更多相关文章

  1. AngularJS中的表单验证

    AngularJS中的表单验证 AngularJS自带了很多验证,什么必填,最大长度,最小长度...,这里记录几个有用的正则式验证 1.使用angularjs的表单验证 正则式验证 只需要配置一个正则 ...

  2. MVC中处理表单提交的方式(Ajax+Jquery)

    MVC中处理表单有很多种方法,这里说到第一种方式:Ajax+Jquery 先看下表单: <form class="row form-body form-horizontal m-t&q ...

  3. angular中的表单验证

    angular中的表单验证很强大, 一共有5中验证信息,$valid,$invalid,$pristine,$dirty,$error. $valid-----当验证通过的时候,为true,不通过的时 ...

  4. MVC中Form表单的提交

    概述 Web页面进行Form表单提交是数据提交的一种,在MVC中Form表单提交到服务器.服务端接受Form表单的方式有多种,如果一个Form有2个submit按钮,那后台如何判断是哪个按钮提交的数据 ...

  5. Excel中的表单控件和active控件

    EXCEL中有两种控件:表单控件和active控件 表单控件是excel5和excel95开始使用的,从excel97开始,active控件开始出现 关于表单控件和active控件的区别和使用范围,网 ...

  6. django中form表单的提交:

    一,关于表单: 表单在百度百科的解释:   表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器的方法. 表单域 ...

  7. 使用js控制表单重复提交(1加锁,2事件方式,3 EasyUI中解决表单重复提交)

    方法一. var flag = true; $(function() { $("#interested").click(function() { beInterested(); } ...

  8. flask 在视图函数中验证表单

    在视图函数中验证表单 因为现在的basic_form视图同时接受两种类型的请求:GET请求和POST请求.所以我们要根据请求方法的不同执行不同的代码.具体来说,首先是实例化表单,如果是GET请求,就渲 ...

  9. flask 在模板中渲染表单

    在模板中渲染表单 为了能够在模板中渲染表单,我们需要把表单类实例传入模板.首先在视图函数里实例化表单类LoginForm,然后再render_template()函数中使用关键脑子参数form将表单实 ...

随机推荐

  1. NEsper事件处理 z

    http://esper.codehaus.org/nesper/documentation/documentation.html 环境配置 NEsper库下载:下载网址 Vs2010环境集成 在项目 ...

  2. .Net 程序的运行

    1. 用.Net开发的程序运行的某台机器上必须安装.Net FrameWork 2. .Net FrameWork向下兼容的实现 在安装4.0的时候,会把3.5,2.0等低版本的都装上,从而实现向下兼 ...

  3. opencv保存选择图像中的区域(二)

    /* * ===================================================================================== * * Filen ...

  4. Unity3d Realtime Dynamic Volume Clouds Rendering

    Ray Marching体积渲染+perlin noise 动态效果: 博主近期渲染: 2016的渲染 2015后半段的渲染 ---- by wolf96

  5. wuzhicms查找:当前页面使用的哪个文件

    要查看这个地址的模版.http://www.wuzhicms.com/item-34-2-1.html 首先,我们的这个地址需要是动态的.而不是生成的静态地址. 打开文件: /www/configs/ ...

  6. bzoj2946 [Poi2000]公共串(SA,SAM)

    [题意] 多串求LCS.   [思路]   主要是想找一下SAM的优越感 :) velui good 后缀数组划分height需要注意不少细节 <_<,然后不停debug   [代码]   ...

  7. 搭建Windows Azure开发环境-Azure虚拟机

    概念 这一节是关于让设置了Azure的虚拟机,它包括的Visual Studio 2013 RC旗舰版和SQL Server 2012 Express的 . 在此动手实验中,您将探索建立使用Windo ...

  8. java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0 *&* 解决方法

    java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0*&*^    at java. ...

  9. 迷宫 (BFS)

    <挑战程序设计> P34 第一次使用pair 1.头文件:<utility>2.成员:mypair.first, mypair.second3.运算符:<.>.&l ...

  10. 百度参投 Uber中国12亿美元融资已到账

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...