2013-02-01 86 views
0

Yii新手在這裏, 我想知道是否還有渲染一個我以前在CKEditor TextArea中創建的視圖。Yii:渲染CKEditor文本區域內的視圖

我試着在值屬性中渲染它,但不幸的是它沒有工作。

有沒有辦法做到這一點?或者我應該創建一個單獨的函數並將頁面輸出到文本區域?

任何提示,建議或指針非常感謝!謝謝

  <?php 
    $this->widget('application.extension.CKEditor.TheCKEditorWidget', array(
     'model' => $model, 
     'attribute' => 'body', 
     'value' => //rendered page,  
     'height' => '400px', 
     'width' => '800px', 
     'toolbarSet' => 'Full', 
     'ckeditor' => Yii::app()->basePath . '/../ckeditor/ckeditor.php', 
     'ckBasePath' => Yii::app()->baseUrl . '/ckeditor/', 
     'css' => Yii::app()->baseUrl . '/css/index.css', 
    )); ?> 
+0

看到這個帖子http://www.yiiframework.com/forum/index.php/topic/9341-ckeditor-widget-in-a-cactiveform/ –

回答

1

如果指定modelattribute屬性value屬性不被使用。所以爲了在CKeditor中顯示一些東西,你必須在渲染widget之前將它指定爲$model->body="Your content goes here"。在你的情況下,你必須在CKEditor中渲染一個視圖。因此使用帶有第三個參數的CController::render()函數爲true。即

<?php 
    $model->body=$this->render("viewName",array(),true); 

    $this->widget('application.extension.CKEditor.TheCKEditorWidget', array(
     'model' => $model, 
     'attribute' => 'body', 
     'height' => '400px', 
     'width' => '800px', 
     'toolbarSet' => 'Full', 
     'ckeditor' => Yii::app()->basePath . '/../ckeditor/ckeditor.php', 
     'ckBasePath' => Yii::app()->baseUrl . '/ckeditor/', 
     'css' => Yii::app()->baseUrl . '/css/index.css', 
    )); ?> 
+0

太謝謝你了! – KayKay