Forms CForm Yii框架上的自定义表单元素名称属性
我正在使用CModel(特别是Gii)为我的Yii应用程序生成表单。我对如何命名表单元素的Forms CForm Yii框架上的自定义表单元素名称属性,forms,model,yii,gii,Forms,Model,Yii,Gii,我正在使用CModel(特别是Gii)为我的Yii应用程序生成表单。我对如何命名表单元素的name=”“属性有问题。它们看起来与数据库中的表字段完全相同。因此,对于这样的表:Users。我得到一个表单元素,如 这会显示我的表名和字段。我知道我可以将模型名称更改为其他名称,以避免显示我的真实表名,但我也希望至少将usr\u username更改为username。甚至删除元素的name属性上的模型名,改为使用name=“username” 我非常感谢你的意见 关于,因此您可以使用以下简单文本字段:
name=”“
属性有问题。它们看起来与数据库中的表字段完全相同。因此,对于这样的表:Users
。我得到一个表单元素,如
这会显示我的表名和字段。我知道我可以将模型名称更改为其他名称,以避免显示我的真实表名,但我也希望至少将usr\u username
更改为username
。甚至删除元素的name属性上的模型名,改为使用name=“username”
我非常感谢你的意见
关于,因此您可以使用以下简单文本字段:
<?php echo CHtml::textField('username'); ?>
但您将无法执行大量任务:
$model->attributes = $_POST['Users'];
如果您使用CActiveForm小部件创建表单,我认为这是正确的,因为您通过Gii生成了模型,您可以始终设置生成表单输入的方法的
htmlOptions
属性,例如:
$form->textField($model,'attribute_name',array('name'=>'your_custom_name'));
在上面的例子中,输入值可以通过$_POST['your_custom_name']访问,这意味着大量的赋值将不起作用
还要注意,如果不指定输入的id属性,它将与name属性(“your_custom_name”)相同
关于同样值得一提的是,你将无法完成大量任务。谢谢各位。这很有帮助。我会想出一个办法来完成大量的任务,因为我也需要它。
$form->textField($model,'attribute_name',array('name'=>'your_custom_name'));