onunix 2012-06-11 11:07:40 3689次浏览 16条回复 0 0 0

中文化:

public function attributeLabels()
{
    return array(
        'SpecialExpensesID' => 'Special Expenses',
        'ServiceArea' => 'Service Area',

改为:

public function attributeLabels()
{
    return array(
        'SpecialExpensesID' => Yii::t('app','Special Expenses'),
        'ServiceArea' => Yii::t('app','Service Area'),

其中:

<?php
return array(

    'Service Area'=>'业务类型',
    'Special Expenses'=>'专项费用',
    'Service Area'=>'业务区',
);
?>

按理说这个过程应该是没有问题的,但是发现显示时,就发现排列出了问题: 如下所示:

[attach]758[/attach]

[attach]759[/attach]

另外,发现在model中加上中文化后,Advanced Search里面的内容(高级查询条件)确实中文化了,但是 Advanced Search下面的表格的列名还是没有中文化? 即

<?php $this->widget('zii.widgets.grid.CGridView', array(
	'id'=>'specialexpenses-grid',
	'dataProvider'=>$model->search(),
	'filter'=>$model,
	'columns'=>array(
		 array(
			 'header'=>'SpecialExpensesID',
			 'type'=>'raw',
			 'value'=>'$data->SpecialExpensesID',
		   ),
		 array(
			 'header'=>'ServiceArea',
			 'type'=>'raw',
			 'value'=>'$data->ServiceArea',
		   ),

这里面显示出来的内容的列名没有中文化, 这是怎么回事呢?

  • 回复于 2012-06-11 11:17 举报
    <?php $this->widget('zii.widgets.grid.CGridView', array(
            'id'=>'specialexpenses-grid',
            'dataProvider'=>$model->search(),
            'filter'=>$model,
            'columns'=>array(
                     array(
                             'header'=>'SpecialExpensesID',
                             'type'=>'raw',
                             'value'=>'$data->SpecialExpensesID',
                       ),
                     array(
                             'header'=>'ServiceArea',
                             'type'=>'raw',
                             'value'=>'$data->ServiceArea',
                       ),
    。。。。。。
    

    这里也得汉化。

  • 回复于 2012-06-11 12:37 举报

    那排列错误的问题如何解决呢?参见图中,中文化后,排列就错乱了。

  • 回复于 2012-06-11 14:10 举报
    <?php $this->widget('zii.widgets.grid.CGridView', array(
            'id'=>'specialexpenses-grid',
            'dataProvider'=>$model->search(),
            'filter'=>$model,
            'columns'=>array(
                     array(
                             'header'=>Yii::t('app','SpecialExpensesID'),
                             'type'=>'raw',
                             'value'=>'$data->SpecialExpensesID',
                       ),
                     array(
                             'header'=>Yii::t('app','ServiceArea'),
                             'type'=>'raw',
                             'value'=>'$data->ServiceArea',
                       ),
    。。。。。。
    

    这样试试。
    至于排列错误就是CSS的问题了,改改views就行了。

  • 回复于 2012-06-11 14:31 举报

    至于排列错误就是CSS的问题了 ,但是CSS的问题,应该改哪个文件呢,如何修改呢?我看到 protected下面有个css的目录,应该是修改这里的文件呢?但不知道该如何修改?

  • 回复于 2012-06-11 14:34 举报

    你不懂CSS吗?如果不会的话,只能去找前端了。

  • 回复于 2012-06-11 14:55 举报

    这里没有前端人员,请问为什么英文正确、中文就显示不正确呢?可能会是CSS的什么原因导致的呢?能否帮我猜测一下。

  • 回复于 2012-06-11 15:01 举报

    中文的字符更大一些,给撑开了吧

  • 回复于 2012-06-11 15:48 举报

    请问如何将中文字体设小点呢?奇怪的是为什么只是第1个文本框出问题,跳到最前面,后面的文本框都好。

  • 回复于 2012-06-11 15:56 举报

    font-size属性可以设置字体大小。

  • 回复于 2012-06-11 16:33 举报

    我发现只要使用了 Yii::t(。。。)就会出现这个问题,并且我这次在app.php(中文资源)里面设置成英文字母

    <?php
    return array(
        'UserName'=>'a',
        ....
    );
    ?>
    

    也有这个问题,目前总是每个表中,在 界面上(注意是在界面上),排在第一位的那个字段出问题,似乎不是中文导致的,而是这个中文转换函数(Yii::t(。。。)导致

  • 回复于 2012-06-11 16:48 举报

    要不用html::encode();编码一下。

  • 回复于 2012-06-11 17:08 举报


    'UserName' => Yii::t('app','UserName'),
    ....
    改成
    'UserName' => html::encode(Yii::t('app','UserName')),
    ......
    是这样改吗?

  • 回复于 2012-06-11 18:10 举报

    是的,试试.....

  • 回复于 2012-06-12 10:00 举报
    include(html.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory 
    
    D:\skill\finance\yii-1.1.10.r3566\framework\YiiBase.php(418)
    
    406                 {
    407                     foreach(self::$_includePaths as $path)
    408                     {
    409                         $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php';
    410                         if(is_file($classFile))
    411                         {
    412                             include($classFile);
    413                             break;
    414                         }
    415                     }
    416                 }
    417                 else
    418                     include($className.'.php');
    

    要从哪里下载个html.php?

  • 回复于 2012-06-12 13:08 举报

    Yii::t这个函数是在哪里定义的呢,我打算跟进去试试。

  • 回复于 2012-06-12 14:01 举报

    YiiBase.php里面。

您需要登录后才可以回复。登录 | 立即注册