Forms CForm Yii框架上的自定义表单元素名称属性

Forms CForm Yii框架上的自定义表单元素名称属性,forms,model,yii,gii,Forms,Model,Yii,Gii,我正在使用CModel(特别是Gii)为我的Yii应用程序生成表单。我对如何命名表单元素的name=”“属性有问题。它们看起来与数据库中的表字段完全相同。因此,对于这样的表:Users。我得到一个表单元素,如 这会显示我的表名和字段。我知道我可以将模型名称更改为其他名称,以避免显示我的真实表名,但我也希望至少将usr\u username更改为username。甚至删除元素的name属性上的模型名,改为使用name=“username” 我非常感谢你的意见 关于,因此您可以使用以下简单文本字段:

我正在使用CModel(特别是Gii)为我的Yii应用程序生成表单。我对如何命名表单元素的
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'));