私はcakephp 3.xを使用しています。現在のコントローラーのアクションを確認したいモデルにデータベースクエリを入れて、データベースクエリを行います。cakephp 3.xモデルで現在のコントローラーアクションを取得する方法
コントローラのアクションをモデルの関数に渡すことはできますが、私のモデル内で現在のコントローラのアクションをチェックするだけで、複数の関数に渡す必要はありません。モデルの中だけです。
試しマイ - 私はこれを行う場合、私は応答配列を持っている私はその中の他のもののうち、この最良の結果を見つけ、これまでUsersTable.phpに
public function initialize(array $config)
{
parent::initialize($config);
$this->table('users');
$this->primaryKey('user_id');
echo '<pre>';
print_r($GLOBALS);
exit;
}
をを配列
[REQUEST_URI] => /5p_group/users/add
私はこの
echo '<pre>';
print_r($GLOBALS['_SERVER']['HTTP_REFERER']);
exit;
を使用しようとしても、mは私が欲しいの結果を取得していますが、私はCakePHPの3.xのは、使用する他の適切な方法をしたい http://localhost/5p_group/users/archived
ので、最終的に私は、この出力を与える
..
だから、他の方法がありますかそれよりも頻繁に私の現在のコントローラのアクションを得ることができますか?
任意のアイデア..
おかげで、あなたのモデルでルーティングクラスを使用する必要があり、すべての
で料理の本にアクセスすることができ、より機能の参考のために
は、非常に悪い考え、つまり、あなたのモデルは、外の世界を知っていると、このような決定を下すことになっていません!コントローラがモデルからのデータを必要とする場合、コントローラは、モデルにどのデータが必要かを伝えます。ちょうどあなたが_正確に何かを照会する必要があるのかを精緻にすれば、より良い助けを得ることができます。 – ndm
私はそれが理にかなっていないことを知っています。しかし、事を知ることは間違っていますか? –
悪い習慣やそれを避ける方法のように、物事を知ることは間違いありません。そして、あなたが正しいことをする方法のようにもっと知りたければ、あなたが解決しようとしている実際の技術的問題、つまり既に言及されているように、正確に何かを質問する必要がありますか? 。 – ndm