2011-07-05 9 views
2

こんにちは、私はCakePHPのコメントプラグインを使用しようとしているが、それは私に次のエラーCakePHPのコメントプラグインの問題

Missing Method in CommentsController Error: The action index is not defined in controller CommentsController Error: Create CommentsController::index() in file: app\controllers\comments_controller.php.

これまでのところ、私はコメントのテーブルを作成しましたを与えるhereを発見したプラグインして、コメントを追加し、それを追加しました私は「取る」アクションにコメントを追加すると、次のコードは、コントローラをテストするには:私はルートを追加

public function beforeFilter() {

parent::beforeFilter();  
$this->passedArgs['comment_view_type'] = 'flat'; 
$this->passedArgs['actionNames'] = 'take'; 

}

function take($id) {

$this->Test->recursive = 2; 
$this->set('test', $this->Test->read(null, $id)); 

}

Router::connect('/comments/:action/*',array('plugin' => 'comments','controller' => 'comments'));

私は誰もこのプラグインを以前に使ったことがあり、助けてくれるのだろうかと思っています。

おかげで、

Brary

+0

、プラグインに問題があるようですので、私はCakeDCコメントプラグインに移動しhttps://github.com/CakeDC/comments – Brary

答えて

1

は私がそのプラグインを使用していないが、エラーがケーキに非常に一般的です:それはデフォルトまたは家であるよう

ケーキは、インデックス機能を探していますそのコントローラまたは任意のコントローラのための機能。本質的にケーキは、コメントコントローラ内でindex()という関数を通してページを(私が仮定/コメントしている)あなたにルーティングしようとしているので失敗しています。これはコアCake MVCルーティング機能です。

あなたは、そのページが仕事をしたい場合は、追加する必要があります。

function index(){ 
...controller code... 
} 

をcomments_controller.phpします。しかし、index.ctpファイルを/ app/views/commentsに追加する必要があります。そうしないと、cakeはあなたに欠落しているビューエラーを与えます。

url/comments/takeではどうなりますか?

+0

それはプラグインですので、私はそれのためのコントローラを持っていませんそれで、私はルートを追加したのです。 – Brary

+0

これはプラグインなので、コントローラを編集してはいけません。 – Dunhamzzz

+0

私はちょうど指示に従っています:D – Brary

0

私は悪いですが、あなたは公式CakeDC comments pluginを使用していないことを私は見ていませんでした。

+0

返信ありがとうございました。私は、「take」アクションでコメントを表示することを望んでいました。ビューに追加したコメントを追加することを意味しています。「<?php echo $ this-> requestAction( '/ comments/index/tests /'.$ test [ ">" – Brary

+1

私はちょうど私たちが別のコメントプラグインについて話していることに気付きました。私はCakeDCが提案したプラグインを使用し、更新されています。 – Dunhamzzz

+0

私が使用しているのは、CakeDCのプラグイン上に構築されていると思いますが、いくつかの機能を追加しています。アドバイスいただきありがとうございます。元のプラグインを試してみてください。 – Brary