I use gii ajaxcrudgiitemplate .
protected\views\news\index.php
<?php
$this->widget('zii.widgets.grid.CGridView', array(
'id' => 'news-grid',
'dataProvider' => $model->search(),
'filter' => $model,
'htmlOptions'=>array('class'=>'grid-view clear'),
'columns' => array(
'id',
array(
'name'=>'group_id',
'value'=>'Groupnews::model()->findByPk($data->group_id)->name',
'filter'=>Groupnews::items(),
'htmlOptions'=>array('style'=>'text-align:center;width:100px;'),
),
'title',
'detail:html',
'indate',
'updates',
array(
'class' => 'CButtonColumn',
'buttons' => array(
'news_delete' => array(
'label' => Yii::t('admin_news', 'Delete'), // text label of the button
'url' => '$data->id', // a PHP expression for generating the URL of the button
'imageUrl' =>Yii::app()->request->baseUrl .'/js_plugins/ajaxform/images/icons/cross.png', // image URL of the button. If not set or false, a text link is used
'options' => array("class" => "fan_del", 'title' => Yii::t('admin_news', 'Delete')), // HTML options for the button tag
),
'news_update' => array(
'label' => Yii::t('admin_news', 'Update'), // text label of the button
'url' => '$data->id', // a PHP expression for generating the URL of the button
'imageUrl' =>Yii::app()->request->baseUrl .'/js_plugins/ajaxform/images/icons/pencil.png', // image URL of the button. If not set or false, a text link is used
'options' => array("class" => "fan_update", 'title' => Yii::t('admin_news', 'Update')), // HTML options for the button tag
),
'news_view' => array(
'label' => Yii::t('admin_news', 'View'), // text label of the button
'url' => '$data->id', // a PHP expression for generating the URL of the button
'imageUrl' =>Yii::app()->request->baseUrl .'/js_plugins/ajaxform/images/icons/properties.png', // image URL of the button. If not set or false, a text link is used
'options' => array("class" => "fan_view", 'title' => Yii::t('admin_news', 'View')), // HTML options for the button tag
)
),
'template' => '{news_view}{news_update}{news_delete}',
),
),
'afterAjaxUpdate'=>'js:function(id,data){$.bind_crud()}'
));
?>
protected\views\news\_ajax_form.php
<div class="row">
<?php echo $form->labelEx($model,'detail'); ?>
<?php //echo $form->textArea($model,'detial',array('rows'=>6, 'cols'=>50)); ?>
<?php echo $form->error($model,'detail'); ?>
<?php
$this->widget('ext.ckeditor.CKEditorWidget',array(
"model"=>$model, # Data-Model
"attribute"=>'detial', # Attribute in the Data-Model
"defaultValue"=>$model->detail, # Optional
# Additional Parameter (Check http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html)
"config" => array(
//"height"=>"400px",
"width"=>"600px",
//"toolbar"=>"Basic",
),
#Optional address settings if you did not copy ckeditor on application root
"ckEditor"=>Yii::app()->basePath."/../ckeditor/ckeditor.php",
# Path to ckeditor.php
"ckBasePath"=>Yii::app()->baseUrl."/ckeditor/",
# Realtive Path to the Editor (from Web-Root)
) );
?>
</div>
firebug error uncaught exception: [CKEDITOR.editor] The instance "News_detail" already exists.