0

yii でモデルの EditableGridView をプラグインしたいと考えています。ここからプラグインの指示に従いまし た。php クラスのソース ファイルを '/protected/extentions' フォルダーにアップロードし、ビューに挿入しました。

  $this->widget('zii.widgets.grid.CEditableGridView', array(
    'dataProvider'=>$dataProvider,
    'showQuickBar'=>'true',
    'quickCreateAction'=>'QuickCreate', // will be actionQuickCreate()
    'columns'=>array(
       'title',          // display the 'title' attribute
        array('header' => 'editMe', 'name' => 'editable_row', 'class' => 'CEditableColumn')
  ));

実行すると、「エイリアス "zii.widgets.grid.CEditableGridView" は有効ではありません」という CException がオンになっています。どうしたの?プラグインするために x-editable 'EditableDetailView' で行ったように、/congig/main.php にさらに追加する必要がありますか?

4

1 に答える 1

1

拡張機能を配置する場所は、何が間違っているかを知るために重要です。あなたのリファレンスhttp://www.yiiframework.com/extension/editablegridviewに行きました。実際、サンプルコードに別のエイリアスを提供し、チュートリアルで表示されたものとは異なっていました。

彼らは言っ"Extract both Classes to application/extensions/"たが、サンプル コードでは、zii.widgets.gridYiiframeworkフォルダー内の拡張子である を使用していた。

ダウンロードした拡張子とフォルダーの構造を次のように配置すると仮定します

your_app
!_protected
!_!_extensions
!_!_!_widgets
!_!_!_!_editableGrid <== folder contains extension files

Put them here
!_!_!_!_!_CEditableColumn.php
!_!_!_!_!_CEditableGridView.php
!_!_!_!_!_Relation.php

それではどうぞ

$this->widget('ext.widgets.editableGrid.CEditableGridView', array(
    'dataProvider'=>$dataProvider,
    'showQuickBar'=>'true',
    'quickCreateAction'=>'QuickCreate', // will be actionQuickCreate()
    'columns'=>array(
        'title',          // display the 'title' attribute
        array(
         'header' => 'editMe', 
         'name' => 'editable_row', 
         'class' => 'ext.widgets.editableGrid.CEditableColumn' // noted the modified alias here
        ))));
于 2013-08-13T08:02:14.813 に答える