0

我有一个带有标题行的 cakePHP 应用程序。此标头包含所有者姓名、电话号码、电子邮件等内容……所有者可以更改此信息,因此此标头必须是动态的。是否可以将此标题包含到布局中,所以我不必在每个视图中都包含它?

谢谢

编辑: 我明白了,我没有正确描述我的问题。标题中的信息不是用户信息。应该有网站所有者的姓名(或公司名称),所有者的电话号码等信息。这些信息对于所有登录的用户都是相同的。不管怎么说,还是要谢谢你。这个问题似乎在另一个问题中得到解决

4

2 回答 2

1

是的

假设用户数据存储在会话中,您可以 - 在您的布局中 - 执行类似的操作

<div id="#header">
    <?php 
     echo $this->Session->read('Auth.User.name'); 
     // echo other User information
    ?>
</div>
于 2013-11-08T13:17:06.887 回答
1

用户即使在登录后也可以编辑他的信息。在这种情况下,会话数据将无助于显示正确的信息。

用于显示动态数据

所以更好的是,您可以设置来自控制器的信息并将其显示在视图中,如下所示

控制器

public function beforeFilter() {
    parent::beforeFilter();

    if ($this->Auth->user('id')) {
        $this->loadModel('User');
        $this->set('user', $this->User->findById($this->Auth->user('id')));
    }
}

看法

<div class='header'>
<?php
    if (!empty($user)) {
        echo $user['User']['name']; // display the info whatever you want.. 
    }
?>
</div>
于 2013-11-08T13:32:29.073 回答