当前位置:  开发笔记 > 编程语言 > 正文

如何处理MVC网站的模板?

如何解决《如何处理MVC网站的模板?》经验,为你挑选了1个好方法。

我把它标记为PHP,但仅仅因为我将使用PHP代码来显示我的问题.

所以我为控制器提供了这样的代码:

switch ($page)
{
    case "home":
        require "views/home.php";
        break;
    case "search":
        require "views/search.php";
        break;
}

显然有更多的页面,但这应该说明我的问题.这两个页面都有一个共同的页眉,导航和页脚(对于网站上的所有页面).我应该使用多个require语句吗?我的第一个猜测是:

switch ($page)
{
    case "home":
        require "templates/header.php";
        require "templates/navigation.php";
        require "views/home.php";
        require "templates/footer.php";
        break;
    case "search":
        require "templates/header.php";
        require "templates/navigation.php";
        require "views/search.php";
        require "templates/footer.php";
        break;
}

不知怎的,我的直觉告诉我这不正确.



1> tvanfosson..:

控制器应该只为视图设置数据并选择要显示的视图.视图应负责页面的布局,包括共享页面.我喜欢你的第一个样本.


这不能回答我的问题,我不认为智能上的两个文件都有相同的页眉/页脚/导航.特别是因为它公然违反DRY原则.
推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有