ビュー属性「passedArgs」(または同様のもの)にアクセスするための合理的な方法はありますか
/* view */
$this->passedArgs
ヘルパーの中から?
ヘルパーの_construct()をカスタマイズしたり、app_helperをカスタマイズしたりできれば幸いですが$this->passedArgs
、すべてのビューや使用法でヘルパーに渡す必要はありません。
Cake2.xおよび3.x
_View
オブジェクト内の変数を検索できます。
$this->_View->viewVars['foo'];
ケーキ1.x
ヘルパー内から現在のビューオブジェクトを取得すると、passedArgsにアクセスできるはずです。
class SomeHelper extends AppHelper {
function __construct($settings = array()){
$this->passedArgs = ClassRegistry::getObject('view')->passedArgs;
}
}
ケーキ1.2.x
ヘルパー内から現在のビューオブジェクトを取得すると、そのviewVarsにアクセスできるはずです。
class SomeHelper extends AppHelper {
function __construct($settings = array()){
$this->viewVars = ClassRegistry::getObject('view')->viewVars;
}
}
楽しんで、ニック
AppControllerからビューの値を設定してみましたか?
class AppController extends Controller {
function beforeFilter() {
// other stuff
$this->set( 'passed_args', $this->params['pass'] );
}
}
ケーキ3:
$this->getView()->get('my_var');