CakePHPの:唯一のシェルに、コントローラメソッドを制限しますか?
-
25-09-2019 - |
質問
私のケーキの多くは、私はcronとケーキのコンソール経由で起動されている殻を持っている、と私は、彼らが唯一のコンソールで呼び出すことができるようにすることを「プライベート」な方法でこれらのメソッドを制限することができる場合、私は疑問に思ってアプリでは?たとえば、のは、私は私のシェルでこれを持って言わせます:
$this->requestAction(array('controller' => 'reviews', 'action' => 'generateReports'));
どのように私は、メソッド「だけシェル」と「generateReports」アクションを制限するだろうか?私はまたに行くことによって、私のブラウザでメソッドを呼び出すことができますので:
http://site.url/reviews/generateReports
そして、このように有用であるとして、それは運用環境で危険なことができ、デバッグ用であってもよい。
、そして、シェルはそれを実行することはできません。何か案は?これに対する簡単な解決策があるべきような気がしますが、私は1つを見つけることができていない、または同様の質問が投稿しました。ありがとう!
解決
あなたのアクションが唯一のサーバで実行する場合、なぜウェブアクセスコントローラのアクション内部アウトビルド?
あなたがそのメソッドを実行するだけCakeShellをご希望の場合は、、アクションだけでCakeTaskとして作成する必要があります。
所属していません StackOverflow