Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CakePHP中静态页面的链接,无需附加控制器_Php_Cakephp_Cakephp 1.3 - Fatal编程技术网

CakePHP中静态页面的链接,无需附加控制器

CakePHP中静态页面的链接,无需附加控制器,php,cakephp,cakephp-1.3,Php,Cakephp,Cakephp 1.3,所以我在views>pages文件夹中创建了几个静态页面。它们是contact.ctp和privacy.ctp。在我的routes.php中,我这样做是为了通过访问domain.com/contact和domain.com/privacy来查看它们: Router::connect('/contact', array('controller' => 'pages', 'action' => 'display', 'contact')); Router::connec

所以我在views>pages文件夹中创建了几个静态页面。它们是contact.ctp和privacy.ctp。在我的routes.php中,我这样做是为了通过访问domain.com/contact和domain.com/privacy来查看它们:

    Router::connect('/contact', array('controller' => 'pages', 'action' => 'display', 'contact'));

    Router::connect('/privacy', array('controller' => 'pages', 'action' => 'display', 'privacy'));
<li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
现在,当我在页脚将它们链接到:

    <li><?= $this->Html->link('Contact', array('controller' => 'pages', 'action' => 'display', 'contact')); ?></a></li>

    <li><?= $this->Html->link('Privacy', array('controller' => 'pages', 'action' => 'display', 'privacy')); ?></a></li>
<li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
  • 它们被链接为domain.com/页面/terms。我如何阻止它在不提供绝对url的情况下附加pages controller(即不执行:
    或这是唯一的其他方法?

    使用实际链接

    <a href ="/contact">Contact</a>
    
    <li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
    
    
    
    以及:

    <a href ="/privacy">Privacy</a>
    
    <li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
    
    
    

    短而甜美的^ ^

    您可能会将这些路由放在
    路由器::连接('/pages/*',数组('controller'=>'pages','action'=>'display'))之后;
    只要颠倒顺序,它就会工作。

    路由
    <li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
    
    看法 输出
    为了子孙后代,为了简洁起见,您可以使用
    路由器::url()

    <li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li>
    

  • 似乎没有任何原因说明代码不能正常工作(Cake 1.3使用反向路由来实现您想要的功能)。您是否修改了任何核心功能?edit-Cake甚至在API中给出了以下示例:
    Router::connect('/home page',array('controller'=>'pages',action'=>'display',home'))
    看来你的代码不错哦,是的!用蛋糕学习有很多复杂的东西,但我越学越喜欢它。非常感谢!