smarty里的常量如何使用

#1 elick

下载了留言板例子 并做了一下修改 有点困惑的地方





绿色留言本





               

<{foreach from=$results item=one}>
                        

<{$one.name}>:<{$one.title}>


                        

<{$one.contents}>


<{/foreach}>
                        

                                
        
                                       

                                                Figure 1
                                       

                                       

请填写您的留言


                                       

                                       

您的名字:


                                       

留言标题:


                                       

留言内容:


                                       


                                       


                                       
        
                                

                        

               

<{include file="$path/tpl/foot.html"}>






我把用于选择模板的那段代码 调出来放在模板目录下的foot.html 这样所有模板都可以调用了 修改起来方便
但是smarty里的include 必须是绝对路径本来想用APP_PATH 但是用{$smarty.const.APP_PATH}却不好使 只能定义个变量path
但这样太麻烦了 不知道有没有解决的方法


还有就是我引入css样式时把guestboot/给去掉才有效 而例子里是有的
还有一个问题 选择模板的路径用例子里的/?tpl=green2 不起作用 我只好把路径写全了才行

  


不知道是不是例子太老了有点问题 还是和我这里的配置有关 我是widows下 把guestbook直接扔到网站根目录
如果是例子的问题请更新下 以免给新手造成困扰
谢谢

2010-12-23 15:34:26

#2 jake

入口教程第六章的例子,是直接把程序放根目录就可以用了。如果放子目录里面的话(如guestbook),那么就需要处理一下CSS的引用路径——之所以在例子里面不处理,因为那是入门教程。

那个例子,如果放在guestbook的话,CSS就是,也就是使用绝对路径来引用css和图片


另外,如果是在smarty中include模板,模板应该是相对模板目录的路径:
在上面的例子里面:'template_dir' => APP_PATH.'/tpl',假设footer.html在tpl下:
<{include file="foot.html"}>
就可以了。

2010-12-23 19:42:15

#3 elick

谢谢赐教  speedphp 比较小巧 容易理解 努力学习中................

2010-12-24 16:16:32