【问题标题】:Codeigniter Routing methodsCodeigniter 路由方法
【发布时间】:2018-04-10 06:31:55
【问题描述】:

我有一个控制器页面,正在使用这个控制器来加载产品详细信息和部门详细信息。

在加载一个部门时,浏览器中加载的 URL 如下所示

网址: www.example.com/pages/division_details/$1

但我需要在浏览器中加载的 URL 是

网址: www.example.com/$1

控制器和方法名称(pages/division_details) 必须被替换并且 $1 值,即从数据库中获取的值会被加载

与产品详细信息的情况相同

网址: www.example.com/pages/product_details/$1

网址: www.example.com/$1

控制器和方法名称(pages/product_details) 必须被替换并且 $1 值,即从数据库中获取的值会被加载

我应该如何放置路由方法,以便在 URL 中看不到控制器和方法名称?

【问题讨论】:

  • 查看官方文档codeigniter.com/userguide3/general/routing.html 并更新您的帖子相应的操作。
  • 更新帖子@Deep3015
  • route 中的两个操作不可能相同 CI。它可以为您的问题定义两条路线。
  • 做这样的事情的唯一方法是创建自己的路由处理程序,您可以在其中检查 $1 内的内容,然后定义它所属的位置。但是不建议这样做。

标签: php codeigniter


【解决方案1】:

您可以使用一些文本来创建它,例如

$route['division_(:num)'] = 'pages/division_details/$1';
$route['product_(:num)'] = 'pages/product_details/$1';

现在您的网址将类似于

www.example.com/division_$1

对于产品

www.example.com/product_$1

【讨论】:

    猜你喜欢
    • 2016-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 2011-07-08
    相关资源
    最近更新 更多