thinkphp模板路径有关问题

WBOY
Release: 2016-06-13 11:57:51
Original
868 people have browsed it

thinkphp模板路径问题
第一次使用thinkphp,关于模板里资源文件路径的设置一直搞不懂。
比如

我的项目采用了分组‘Admin’和‘Content’,之前为了测试模板显示效果简单地写了个PageTestAction只有一个show方法来display模板而且为了方便设置了默认分组、默认模型、默认方法,因而访问地址http://localhost/XBlog(项目名)/index.php一切正常。

而当我使用正常的路径http://localhost/XBlog/index.php/Content/PageTest/show来访问是资源文件便无效了

按照我的理解 ’__PUBLIC__‘=‘/Public’因而 ‘.__PUBLIC__‘=‘./Public’, 而'./'表示当前目录,所以‘./Public’这个相对地址是相对于index.php的,然而当后面加上’/Content/PageTest/show‘就不行了,难道’/Content/PageTest/show‘也是作为路径存在的吗,他改变了当前的路径?他不是用来表示分组、模块、方法的虚拟路径吗?

还有,我发现如果写成网站根目录相对地址是这样的,不理解分什么中间还夹着一个项目名目录?还有‘__ROOT__: 会替换成当前网站的地址(不含域名)__APP__: 会替换成当前项目的URL地址 (不含域名)’,难道一个网站可以包含多个项目?
__ROOT__和__APP__是什么关系?
虽然在本地WWW文件夹下却是存在多个项目,但是在服务器上正式部署不是这样的吧?/XBlog(项目名)/Public/Theme/default/css/bootstrap.min.css"这种写法会不会对部署有影响?
------解决方案--------------------
第一个问题:
/Content/PageTest/show确实改变了路径,因此模板中资源地址要使用相对于根目录的路径而非当前地址。
第二个问题:
/XBlog应该是你在www目录下创建的项目文件夹吧,网站根目录指的是www文件夹而非项目文件夹
第三个问题:
/XBlog(项目名)/Public/Theme/default/css/bootstrap.min.css这种写法对部署当然有影响,因为部署时通常将项目文件夹下的内容直接放到www文件夹下,如果这样就应去掉/XBlog(项目名)

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template