Yii将yiistrap和语言数组组合在一起

Yii将yiistrap和语言数组组合在一起,yii,tabs,internationalization,Yii,Tabs,Internationalization,这是我为每种语言打印字段的数组 <?php foreach (Yii::app()->params['translatedLanguages'] as $l => $lang) : if($l === Yii::app()->params['defaultLanguage']) $suffix = ''; else $suffix = '_'.$l; ?>

这是我为每种语言打印字段的数组

<?php foreach (Yii::app()->params['translatedLanguages'] as $l => $lang) :
                if($l === Yii::app()->params['defaultLanguage']) $suffix = '';
                else $suffix = '_'.$l;
                ?>
                <fieldset>
                    <legend><?php echo $lang; ?></legend>

                    <div class="row">
                        <?php echo $form->labelEx($model,'title'); ?>
                        <?php echo $form->textField($model,'title'.$suffix,array('size'=>60,'maxlength'=>255)); ?>
                        <?php echo $form->error($model,'title'.$suffix); ?>
                    </div>

                    <div class="row">
                        <?php echo $form->labelEx($model,'content'); ?>
                        <?php echo $form->textArea($model,'content'.$suffix); ?>
                        <?php echo $form->error($model,'content'.$suffix); ?>
                    </div>
                </fieldset>
            <?php endforeach; ?>

这是选项卡的YISTRAP代码


如何用表单中的字段替换内容(如家庭测试)?
因此,最后我为每种语言(如opencart)创建了一个选项卡。

这是我视图中选项卡的代码

    <?php $tabs = array(); ?>
    <?php foreach (Yii::app()->params['translatedLanguages'] as $l => $lang) :
        if($l === Yii::app()->params['defaultLanguage']) $suffix = '';
        else $suffix = '_'.$l;
        ?>
        <?php $tabs[] = array('label' => $lang, 'view' => '_fields', 'viewData' => array('form' => $form, 'model' => $model, 'suffix' => $suffix)); ?>
    <?php endforeach; ?>

    <?php $this->widget('bootstrap.widgets.TbTabs', array(
        'tabs' => $tabs,
        'viewData' => array('form' => $form, 'model' => $model, 'suffix' => $suffix),
    )); ?>

如何覆盖TbTabs.php?我只是在破解这不好
    <?php $tabs = array(); ?>
    <?php foreach (Yii::app()->params['translatedLanguages'] as $l => $lang) :
        if($l === Yii::app()->params['defaultLanguage']) $suffix = '';
        else $suffix = '_'.$l;
        ?>
        <?php $tabs[] = array('label' => $lang, 'view' => '_fields', 'viewData' => array('form' => $form, 'model' => $model, 'suffix' => $suffix)); ?>
    <?php endforeach; ?>

    <?php $this->widget('bootstrap.widgets.TbTabs', array(
        'tabs' => $tabs,
        'viewData' => array('form' => $form, 'model' => $model, 'suffix' => $suffix),
    )); ?>
<?php echo $form->textFieldControlGroup($model,'title'.$suffix,array('span'=>5,'maxlength'=>128)); ?>
<?php echo $form->textAreaControlGroup($model,'content'.$suffix,array('rows'=>6,'span'=>8)); ?>
protected function normalizeTabs($tabs)
{
    $controller = $this->getController();
    if (isset($controller)) {
        foreach ($tabs as &$tabOptions) {
            $items = TbArray::getValue('items', $tabOptions, array());
            if (!empty($items)) {
                $tabOptions['items'] = $this->normalizeTabs($items);
            } else {
                if (isset($tabOptions['view'])) {
                    $view = TbArray::popValue('view', $tabOptions);
                    if ($controller->getViewFile($view) !== false) {
                        $tabOptions['content'] = $controller->renderPartial($view, $tabOptions['viewData'], true);
                    }
                }
            }
        }
    }
    return $tabs;
}