【发布时间】:2011-01-17 19:38:14
【问题描述】:
我在 CakePHP element 文件 (views/elements/nav_default.ctp) 中有一个导航菜单。
该文件包含在另一个元素中,即标题 (views/elements/header_default.ctp),然后包含在布局文件 (views/layouts/default.ctp) 中。
我试图告诉 Cake 从 nav 元素中加载一个 js 文件 (webroot/js/mega_drop.js),如下所示:
<?php
$this->addScript('mega_drop');
?>
它不包括在内。我查看了addScript 的文档,上面写着:
向内部脚本添加内容 缓冲。此缓冲区可用 在布局中作为 $scripts_for_layout。 此方法在创建时很有帮助 需要添加 javascript 的助手或 css 直接到布局。保持在 请注意,从 布局,或布局中的元素将 不被添加到 $scripts_for_layout。 这种方法最常用于 内部助手,如 Javascript 和 Html 助手。
关键部分:
请记住,从布局中添加的脚本或布局中的元素不会添加到 $scripts_for_layout。
那我该怎么做呢?
我想我可以在default.ctp 布局中添加一个<script src="/js/mega_drop.js"></script>。但这感觉不太对劲,因为它会将布局和元素紧密结合在一起。
CakePHP 的最佳实践方法是什么?
【问题讨论】:
标签: php cakephp cakephp-1.3