CakePHP 从 URL 中删除索引操作

Posted

技术标签:

【中文标题】CakePHP 从 URL 中删除索引操作【英文标题】:CakePHP remove the index action from the URL 【发布时间】:2014-09-01 13:35:22 【问题描述】:

如何从 URL 中删除索引操作?

这是我在routes.php中的代码

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

所以基本上,我有这个网址:

http://example.com/jobs/index/pharmacist

但我想把那个改成

http://example.com/jobs/pharmacist

这个配置是纯粹在routes.php还是我需要编辑我的.htaccess,老实说我完全不知道。

您的帮助将不胜感激。谢谢!

【问题讨论】:

Read This (Cakephp URL rewriting) 并确保正确设置步骤 2 【参考方案1】:

根据Docs

通过使用Router::connect() 的第三个参数,您可以定义哪些路由元素也可以作为传递参数使用:

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

在您看来,您可以使用生成链接

echo $this->html->link('link', array(
    'controller' => 'jobs',
    'action' => 'index',
    'slug' => 'your_slug'
));

【讨论】:

以上是关于CakePHP 从 URL 中删除索引操作的主要内容,如果未能解决你的问题,请参考以下文章

从 url 中删除控制器名称不适用于 cakephp 中的多个控制器

如果是索引页,则从路径中删除#。

Elastic stack 技术栈学习—— kibana中索引的基本操作(创建删除更新查看)以及关于文档的基本操作

htaccess 从 url 中删除 index.php

mysql 删除和修改操作会是有索引吗

js数组操作