2

我正在尝试为我的网站创建一个导航栏,该导航栏将从模型的数据库表中获取信息。导航栏目前是在一个元素中实现的,并且具有硬编码的链接。这是我到目前为止所拥有的:

Photo控制器中我有这个:

public function get_all() {
    return $this -> Photo -> find("all");
}

在 header.ctpElement我有这个:

<ul>
    <?php
        $photos = $this -> Photo -> get_all();
        foreach($photos as $photo) {
            ?>
            <li><?= $this -> Html -> link($photo["Photo"]["title"], array("action" => "view", $photos["Photo"]["id"])) ?></li>
            <?php
        }
    ?>
</ul>

我还是 Cakephp 的新手;我应该做什么/更改以从元素访问数据库表?

4

1 回答 1

1

您想在元素中使用requestAction来要求控制器为您提供模型中的列表。

你快到了。

 <ul>
     <?php
         $photos = $this->requestAction(array('controller'=>'photos','action'=>'get_all'));
         foreach($photos as $photo) {
             ?>
             <li><?= $this -> Html -> link($photo["Photo"]["title"], array("action" =>      "view", $photos["Photo"]["id"])) ?></li>
             <?php
         }
     ?>
 </ul>
于 2013-08-05T22:55:36.473 回答