2011-04-05 4 views
0

プラグインに存在するコンポーネントの関数を呼び出したいと思います。 私のapp/xyz_controllerには次のように記述します。 var $ components = array( 'Plugin_name.Component_name'); 私は関数を- $ this-> Component_name-> xyz()と呼んでいます。 しかし、それは動作しません。 問題がどこにあるのか教えてください。Cakephpを使用してapp/controllerのプラグインコンポーネント関数にアクセスする方法

答えて

0

あなたはおそらく、あなたがオンラインドキュメント

requestAction - CakePHP Manual

+0

彼は行動をロードしようとしていません。彼はコンポーネント関数を呼び出そうとしています。 RequestActionは彼のためにそれをしません。 –

+0

興味深いことに、私は[リンク](http://bakery.cakephp.org/articles/eimermusic/2009/09/02/designing-a-modular-application-using-cakephp-plugins)を読んだ後に実際にrequestActionを使用しているプラ​​グインコントローラ内の関数。なぜ、この場合にはうまくいかないのでしょうか? –

+0

requestActionはコントローラのアクションを呼び出すことはできますが、コントローラのコンポーネント関数は呼び出すことができないためです。それが違いです。 –

1

ないこれは自分だったかどうかわから時にrequestActionに関する詳細な情報を得ることができます

$this->requestAction('/Plugin_name/Component_name/xyz'); 

のようなものを使用することができます?でrequestActionを試してみましたたとえば、アンダースコアの代わりにラクダのケースを使用するプラグインとコンポーネントを参照する必要があります。

$components = array('PluginName.ComponentName'); 
$this->ComponentName->xyz(); 

これは私にとってはうまくいくようです - 私はCake 1.3を使って走っています。

+0

他の答えより良い方法:) – mark

関連する問題