2012-07-26 32 views

回答

3

我已經想通了自己。
誰可以派上用場:在文件中
:/保護/擴展/ ETwigViewRenderer.php在初始化函數中添加:

$ Yii的=新ETwigViewRendererStaticClassProxy( 'Yii的');
$ this - > _ twig-> addGlobal('lang',$ Yii);

在按下列方式使用枝條模板:

{{lang.t( '主', '登錄')}}
{{lang.t( '主','退出({用戶名})」,{ '{用戶名}':App.user.name})}}

+1

我認爲你的意思是 {{lang.t('main','Login')}} – 2013-11-26 02:47:33

2
'viewRenderer' => array(
     'class' => 'ext.yiiext.renderers.twig.ETwigViewRenderer', 
     'registerAutoloader' => false, 
     'globals' => array(
      'html' => 'CHtml' 
     ), 
     'functions' => array(
      't' => 'Yii::t', 
     ), 
    ), 

然後你可以使用T( '主', '一些文本')上的樹枝檔案

0

@extends尤金回答。

不如在配置定義全局,而不是編輯的文件擴展名:

'view' => [ 
      'class' => 'yii\web\View', 
      'renderers' => [ 
       'twig' => [ 
        'class' => 'yii\twig\ViewRenderer', 
        'cachePath' => '@runtime/Twig/cache', 
        // Array of twig options: 
        'options' => [ 
         'auto_reload' => true, 
        ], 
        'globals' => ['html' => '\yii\helpers\Html', 'lang' => 'Yii'], 
        'uses' => ['yii\bootstrap'], 
       ], 
      ], 
     ], 

通知「郎」 =>「Yii的」,在「全局」的設置。