私はこのようなことをする必要があります。Cakephp - コンテキストに応じてモデルを照会してください
$model="MyModel";
$results=$this->"MyModel"->find("all);
だから私はこのケースに応じて別の関数を呼び出す必要があります。どうすればそれを達成できますか?
私はこのようなことをする必要があります。Cakephp - コンテキストに応じてモデルを照会してください
$model="MyModel";
$results=$this->"MyModel"->find("all);
だから私はこのケースに応じて別の関数を呼び出す必要があります。どうすればそれを達成できますか?
まあ、あなたがしようとしているのは、条件に応じて別のモデルを呼び出すことです。
ただし、これを行う必要がある場合は、コードを誤って整理している可能性があります。代替案を検討したいかもしれません。
あなたは、そのコントローラのアクションの中から
class MyControllerController extends AppController
{
function action_name()
{
$this->uses = array(
'MyModel',
'AnotherModel'
);
$this->AnotherModel->find('all');
}
}
$モデル= "モデル" を行うことができます。 $ results = $ this - > {$ model} - > find( 'all');
この手法は、CakePHPのコーディング規約に準拠していますが、より良い方法やクリーンな方法はありません。特に、複雑なロジックでビヘイビアをコーディングする場合。だからそれに固執し、心配しないでください。
ありがとう、これは完全に機能しました。 私はそれが奇妙で「汚れている」ように見えますが、それは私の問題の唯一の解決策です。 – Chobeat