YouYaX开发攻略--网站首页的修改(一)

zibbs 发布于 2013/02/25 15:42
阅读 455
收藏 0
打开 "程序主目录/Tpl/home/index.html"
结合 "程序主目录/Lib/IndexAction.php"来观察
程序运行形式是“控制器=》(调用)模板”
知识点1
为什么要看这2个文件?
【解释】IndexAction.php中的index方法下有
$this->display('home/index.html');

display方法是用来调用模板的,用过smarty的应该知道,类似的作用。

知识点2
模板中 <script type="text/javascript" src="{site}/Public/JScript/public.js"></script>
【解释】{site}以模板标记解析,表示论坛网址,看控制器index方法中的
$this->assign('site', C('SITE'));

{ }大括号是用来解析字符串变量的,C方法是用来获取配置项config.php的键值的。
<?php return array( 'db_host' => 'xxx', 'db_name' => 'xxx', 'db_user' => 'xxx', 'db_pwd' => 'xxx', 'db_prefix' => 'xxx', 'default_language' => 'xxx', 'default_url' => 'xxx', 'static_url' => 'xxx', 'default_action' => 'xxx', 'SITE' => 'http://www.youyax.com/forum', 'seo_set' => 'off' ); ?>

那么C('SITE')就表示为http://www.youyax.com/forum
那么好理解了,assign方法将变量值赋值给site模板变量,然后程序在模板中将它解析出来,
<script type="text/javascript" src="{site}/Public/JScript/public.js"></script>

等同于
<script type="text/javascript" src="http://www.youyax.com/forum/Public/JScript/public.js"></script>

这么做的好处以代码实现模板和页面的分离,将大量的业务逻辑处理全部在控制器中完成,然后输出到模板,方便开发和维护,~
加载中
返回顶部
顶部