毎ページにおいてセッションのuser.idの情報からデータベースに接続し、名前等のuserオブジェクトの取得をし、名前の表示をしたいと思っています。
みなさんはどう実装しているのでしょうか。
1、各コントローラのinitializeに書く
2、Helperを使って、ヘルパー内に毎回データベースへアクセスする記述を書く。
3、その他
コードを書かずに申し訳ないですが、上記を指摘していただいたら、コードをかいてみようと思っています。
viewに
<?= $this->request->session()->read('Auth.User.name')?>という表記で可能ですが、データベースから逐一とってこないと、セキュリティ的にまずいと言われているので、逐一とってくる方法をとりたいと思っています。
以下のようなコードをどのページにいっても走らせたい場合、どう書けば効率がよいでしょうか。
PHP
1 $user_id = $this->request->session()->read('Auth.User.id'); 2 $this->loadModel('Users'); 3 $users = $this->Users->find('all'); 4 $user = $users->find('all')->where(["Users.id" => $user_id])->first(); 5 $this->set(compact('user'));
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/04/10 12:25