html helper在CakePHP上生成带索引和ext的坏URL

时间:2013-09-12 14:25:15

标签: php cakephp helper cakephp-2.3

问题很简单,

我尝试使用以下代码生成带有Html助手的链接:

echo $this->Html->link('<span>PDF</span>', array('action' => 'index', 'ext' => 'pdf'));

echo $this->Html->link('<span>PDF</span>', array('action' => 'index', 'ext' => 'pdf', 'full_base' => true));

它生成:

<a href="/users.pdf" class="action pdf-action"><span>PDF</span></a>

所以,如果动作是索引,那么,他自己决定不在url中生成/ index,并且文档上没有选项可以避免这种情况。

任何人都知道我该怎么办?

感谢您的建议。

编辑:

我尝试使用Router生成url并且结果相同:

echo $this->Html->link('<span>PDF</span>', Router::url(array('controller' => 'users', 'action' => 'index', 'ext' => 'pdf'), true), array('class' => 'action pdf-action', 'escape' => false));

1 个答案:

答案 0 :(得分:0)

在路线文件中使用此代码解决。

Router::connect('/:controller/index', array('action' => 'index'));

当action是index时,它基本上强制将索引放在所有控制器中。下一步找到如何在有扩展时强行它。