在构建项目并在该项目中将页面链接在一起时,我注意到要将事物链接在一起,我必须按如下方式设置路径:
/项目名称/公共/ controllername
现在,当我将其从本地计算机移动到实际站点时,理想情况下我不需要或希望显示/ projectname / public路径。或者必须通过应用程序清除它们。
这将是一个非常严重的问题,特别是对于将操作设置为“/ projectname / public / controller / action”的表单
有谁知道最好用我的链接的第一部分替换?或者我正在看.htaccess来涵盖这个
提前致谢。
答案 0 :(得分:1)
您应该分别对所有内部控制器URL和静态资产(图像,JS等)URL使用Url和BaseUrl帮助程序。
例如
<!-- Link to controller "Foo", action "bar" -->
<a href="<?php echo $this->url(array(
'controller' => 'foo',
'action' => 'bar',
'param' => 'value')) ?>">Go to FooController::barAction()</a>
<img src="<?php echo $this->baseUrl('images/baz.png') ?>">
使用headLink
帮助程序...
<?php echo $this->headLink($this->baseUrl('css/stylesheet.css')) ?>
使用这些帮助程序可以使您的应用程序可移植。