呼び出すことによって、cakephp のコンポーネント内の要素にデータを渡すことは可能$this->element('path_to_element', $data);
ですか?
誰か教えてください
呼び出すことによって、cakephp のコンポーネント内の要素にデータを渡すことは可能$this->element('path_to_element', $data);
ですか?
誰か教えてください
これにはもっと良い方法があります。私はすべてのプロジェクトでこのトリックを使用しています。プロジェクトでセッションを利用してください。アクティブにします。
ここにサンプル要素があります。layout.ctpを使用してセッションまたはselectefコントローラーを作成できます。以下では、cakephpauthsessionを使用しています。お楽しみください。問題が解決することを願っています:)
<?php if($this->Session->check('Auth.user')){ ?>
<span id="uname_wel">Welcome <?php echo $session->read('Auth.user.username'); ?></span>
<?php } ?>
それ以外の場合は、ここでこのリンクを確認できます
または、ビューから要素をロードしている場合は、通常どおりデータをビューに渡してから、要素ページ内からアクセスできます。例:$this->set('result_array',$data);
私が理解していれば、値の配列を渡すことができます。必要なことは次のとおりです。
echo $this->element('myelement', array(
'myvar1' => $myvarvalue,
'myvar2' => $myvarvalue2));
次に、要素のコード内で $myvar1 と $myvar2 にアクセスできます。
お役に立てれば。
コントローラーへの参照を保持している場合は、コンポーネントからビュー var を設定できます。次に、ビュー内でそのビュー var を要素に渡します。
http://book.cakephp.org/1.3/view/996/Creating-Components#MVC-Class-Access-Within-Components-998にあるメソッドの 1 つを使用して、コントローラーへの参照を保持できます。ただする必要がある$this->ControllerReference->set('viewVarName', 'data')