V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Natsuki
V2EX  ›  PHP

想问问关于模板的问题

  •  
  •   Natsuki · 2011-01-19 01:58:35 +08:00 · 4905 次点击
    这是一个创建于 4817 天前的主题,其中的信息可能已经有所发展或是发生改变。
    以前做网页的时候最经常遇到的问题的是模板的重复,特别是对于一个页面有多个动态生成的区域的时候,一个不恰当的例子,比如v2ex,如果我做首页列表/个人回复/以及其他一堆页面的时候,其实我对这个页面的功能重点感兴趣,首页我关心的只是帖子标题列表,于是理想状态是我做完一堆首页帖子列表的数据处理的时候只需要把这些信息塞到模板里面显示就好了,但是考虑到有玩家登陆机制,于是我又必须在每个功能里面把该玩家的信息取出来,也塞到模板里面去处理,这样才能实现首页列表的时候用户才能在导航栏看到自己的id等信息,这些信息异常繁杂而且大多数情况下多个页面其实用的是同一个布局,不知道各位是怎么解决这个问题?之前看了一些框架,有一些方法比如包装成component之类,总觉得太繁杂,一些比较流行的框架里面是如何解决这个问题的呢?比如django,rails?如果没讲清楚我用代码表示一下把


    function actionPostList(){
    $postList = Post::findAll();
    $tpl->assign($postList);

    //以下都是我不想做的
    $tpl->assign($userInfo);
    $tpl->assign($timeInfo);
    $tpl->assign($dynamicNaviLink);

    }


    function actionReplyList(){
    $replies = Reply::find($id);
    $tpl->assign($replies);

    //etc
    $tpl->assign($userInfo);
    $tpl->assign($timeInfo);
    $tpl->assign($dynamicNaviLink);

    }



    这两个页面最后的布局其实也大致一样,
    1 条回复    1970-01-01 08:00:00 +08:00
    holystrike
        1
    holystrike  
       2011-01-19 09:58:05 +08:00 via iPhone
    template-inheritence
    two-step view pattern
    可以看看symfony作者写的twig template engine
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3324 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 13:35 · PVG 21:35 · LAX 06:35 · JFK 09:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.