CCodeForm

优质
小牛编辑
131浏览
2023-12-01
所有包 | 属性 | 方法
system.gii
继承class CCodeForm » CActiveForm » CWidget » CBaseController » CComponent
源自1.1.2
版本$Id: CCodeForm.php 2799 2011-01-01 19:31:13Z qiang.xue $
源码framework/gii/CCodeForm.php
CCodeForm表示一个用来收集生成代码所需参数的表单。

公共属性

隐藏继承属性

属性类型描述定义在
actionmixed表单动作的URL (参见CHtml::normalizeUrl以了解更多关于此参数的细节)。 如果未设置,将使用当前页面的URL。CActiveForm
actionPrefixstringactions的ID的前缀。 当微件在CController::actions中声明了 动作提供者,可以为其动作的ID指定前缀以区别 于别的微件或控制器。当微件用于控制器 的视图中时,必须配置同样的前缀。CWidget
clientOptionsarray传递给JavaScript验证插件的选项数组。 目前支持下列选项:
  • ajaxVar: string, 用来指明当前请求是一个AJAX请求的参数的名字。 当AJAX验证被触发,一个以此属性值为名的参数将与其他表单数据一起被提 交到服务器。此参数的值是表单的ID。 服务器端可以检测出AJAX验证的触发者,并作出相应的反应。 默认值是“ajax”。
  • validationUrl: string, 用于执行AJAX验证的URL。 如果没有设置,将使用action的值。
  • validationDelay: integer, 输入被改变后延迟多少时间才执行 AJAX验证,单位是毫秒。设置为0意味着输入被改变后将立即执行AJAX 验证。设置为大于0的值意味着多个输入改变可能只触发一次AJAX验证, 只要它们发生得足够快。这种方式可以帮助降低服务器负荷。 默认值是200(0.
CActiveForm
controllerCController返回此微件所属的控制器。CWidget
enableAjaxValidationboolean是否使基于AJAX的验证可用。默认值是false。 当此属性设置为true,你应当象下面这样在服务器端对AJAX验证请求作出响应:
public function actionCreate()
{  $model=new User;  if(isset($_POST['ajax']) && $_POST['ajax']==='user-form')  {      echo CActiveForm::validate($model);      Yii::app()->end();  }  .
CActiveForm
enableClientValidationboolean是否使客户端验证可用。默认值是false。

当此属性设置为true,支持它的验证器将执行客户端验证。 (参见CValidator::enableClientValidation和CValidator::clientValidateAttribute。)
CActiveForm
errorMessageCssClassstring错误信息的CSS类。默认值是“errorMessage”。 个体的error调用可以通过指定“class”HTML选项来覆盖这个值。CActiveForm
focusmixed页面载入时初始化获取输入焦点的表单元素。

默认值是null,表示没有输入域拥有焦点。 如果设置为数组,第一个元素是模型,第二个元素是属性。 如果设置为字符串,那么将作为jQuery的选择器使用。

示例 - 设置页面载入时的输入焦点:
  • 'focus'=>array($model,'username') - $model->username 输入框
  • 'focus'=>'#'.
CActiveForm
htmlOptionsarrayadditional 渲染表单标签的HTML属性。CActiveForm
idstring返回此微件的ID。如果需要的话,将生产一个新的ID并将其返回。CWidget
methodstring表单提交的方式。可以是“post”或“get”。 默认值是“post”。CActiveForm
modelCCodeModel与此表单相关的代码模型CCodeForm
ownerCBaseController返回此微件的所有者或创建者。CWidget
skinmixed微件使用的皮肤的名称。默认为“default”。 如果此属性设置为false,微件将不会有皮肤被使用。CWidget
statefulboolean是否生成有状态的表单(参见CHtml::statefulForm)。默认值是false。CActiveForm
viewPathstring返回包含此微件所需的视图文件的路径。CWidget

受保护属性

隐藏继承属性

属性类型描述定义在
attributesarray用于模型属性的javascript选项 (input ID => options)CActiveForm
summaryIDstring包含汇总的错误信息的元素的IDCActiveForm

公共方法

隐藏继承方法

方法描述定义在
__call()如果类中没有调的方法名,则调用这个方法。CComponent
__construct()构造器。CWidget
__get()返回一个属性值、一个事件处理程序列表或一个行为名称。CComponent
__isset()检查一个属性是否为null。CComponent
__set()设置一个组件的属性值。CComponent
__unset()设置一个组件的属性为null。CComponent
actions()返回此widget使用的动作的列表。CWidget
asa()返回这个名字的行为对象。CComponent
attachBehavior()附加一个行为到组件。CComponent
attachBehaviors()附加一个行为列表到组件。CComponent
attachEventHandler()为事件附加一个事件处理程序。CComponent
beginCache()Begins fragment caching.CBaseController
beginClip()Begins recording a clip.CBaseController
beginContent()Begins the rendering of content that is to be decorated by the specified view.CBaseController
beginWidget()Creates a widget and executes it.CBaseController
canGetProperty()确定属性是否可读。CComponent
canSetProperty()确定属性是否可写。CComponent
checkBox()为一个模型属性渲染一个复选框。CActiveForm
checkBoxList()为一个模型属性渲染一个复选框组。CActiveForm
createWidget()Creates a widget and initializes it.CBaseController
detachBehavior()从组件中分离一个行为。CComponent
detachBehaviors()从组件中分离所有行为。CComponent
detachEventHandler()分离一个存在的事件处理程序。CComponent
disableBehavior()禁用一个附加行为。CComponent
disableBehaviors()禁用组件附加的所有行为。CComponent
dropDownList()为一个模型属性渲染一个下拉列表框。CActiveForm
enableBehavior()启用一个附加行为。CComponent
enableBehaviors()启用组件附加的所有行为。CComponent
endCache()Ends fragment caching.CBaseController
endClip()Ends recording a clip.CBaseController
endContent()Ends the rendering of content.CBaseController
endWidget()Ends the execution of the named widget.CBaseController
error()显示一个模型属性的第一个验证错误。CActiveForm
errorSummary()显示一个或多个模型的汇总的验证错误信息。CActiveForm
evaluateExpression()计算一个PHP表达式,或根据组件上下文执行回调。CComponent
fileField()为一个模型属性渲染一个文件上传控件。CActiveForm
getController()返回此微件所属的控制器。CWidget
getEventHandlers()返回一个事件的附加处理程序列表。CComponent
getId()返回此微件的ID。如果需要的话,将生产一个新的ID并将其返回。CWidget
getOwner()返回此微件的所有者或创建者。CWidget
getViewFile()根据视图名查找视图文件。CWidget
getViewPath()返回包含此微件所需的视图文件的路径。CWidget
hasEvent()确定一个事件是否定义。CComponent
hasEventHandler()检查事件是否有附加的处理程序。CComponent
hasProperty()确定属性是否被定义。CComponent
hiddenField()为一个模型属性渲染一个隐藏域。CActiveForm
init()初始化此微件。CCodeForm
label()为一个模型属性渲染出一个HTML Label标签。CActiveForm
labelEx()为一个模型属性渲染出一个HTML Label标签。CActiveForm
listBox()为一个模型属性渲染一个列表框。CActiveForm
passwordField()为一个模型属性渲染一个密码框。CActiveForm
radioButton()为一个模型属性渲染一个单选按钮。CActiveForm
radioButtonList()为一个模型属性渲染一个单选按钮组。CActiveForm
raiseEvent()发起一个事件。CComponent
render()渲染一个视图。CWidget
renderFile()Renders a view file.CBaseController
renderInternal()Renders a view file.CBaseController
run()运行此微件。CCodeForm
setId()设置此微件的ID。CWidget
textArea()为一个模型属性渲染一个多行的文本输入控件。CActiveForm
textField()为一个模型属性渲染一个输入框。CActiveForm
validate()验证一个或多个模型,以JSON格式返回结果。CActiveForm
validateTabular()验证一个由多个模型实例组成的数组,并将验证结果以JSON格式返回。CActiveForm
widget()Creates a widget and executes it.CBaseController

属性详细

model 属性 public CCodeModel与此表单相关的代码模型 $model;

方法详细

init() 方法
public void init()
源码: framework/gii/CCodeForm.php#30 (显示) publicfunctioninit()
{
echo<<<EOD
<divclass="formgii">
<pclass="note">
Fieldswith<spanclass="required">*</span>arerequired.
Clickonthe<spanclass="sticky">highlightedfields</span>toeditthem.
</p>
EOD;
parent::init();
}

初始化此微件。 此方法渲染表单的开始标签。

run() 方法
public void run()
源码: framework/gii/CCodeForm.php#45 (显示) publicfunctionrun()
{
$templates=array();
foreach($this->model->getTemplates()as$i=>$template)
$templates[$i]=basename($template).'('.$template.')';

$this->renderFile(Yii::getPathOfAlias('gii.views.common.generator').'.php',array(
'model'=>$this->model,
'templates'=>$templates,
));

parent::run();

echo"</div>";
}

运行此微件。