使用GII的 CRUD generator, 他的create操作,表单中label都是用的数据表的字段名,但在数据表的字段名都是英文的,但是我希望生成的是中文的,有没有什么快捷的方法实现,还是只能在view中更改
使用GII的 CRUD generator, 他的create操作,表单中label都是用的数据表的字段名,但在数据表的字段名都是英文的,但是我希望生成的是中文的,有没有什么快捷的方法实现,还是只能在view中更改
我不大明白你的意思,我按我的意思理解!
你想修改模型类中属性在页面上对应的标签吗?
你可以修改模型类的标签属性方法:
public function attributeLabels()
{
return array(
'property'=>'label',
);
}
这个方法可以设置每个属性对应的标签输出。
页面上property的标签会显示为label。
不知道我理解的对不对?
嗯,就是这个问题。
谢了!
刚开始用Yii,感觉挺好的,就是有些问题在文档中不好找,多谢论坛的朋友帮忙
可以在messgae中写个文件,利用yii::t翻译label。
我是这样做的,在生成文件的模板中定义
public function attributeLabels()
{
return array(
<?php foreach($labels as $name=>$label): ?>
<?php echo "'$name' => Yii::t('model','$name'),\n"; ?>
<?php endforeach; ?>
);
}
看这个是不是你想要的
model的label可以写个active类让所有的model继承这个类,
active类里加
//翻译
public function getAttributeLabel($attribute)
{
return Yii::t('attribute',strtolower($attribute));
}
attribute.php放到你的语言包下