设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 问答求助
›
设置default_controller不能带参数?
返回列表
查看:
1511
|
回复:
3
[控制器]
设置default_controller不能带参数?
[复制链接]
aard
aard
当前离线
积分
155
IP卡
狗仔卡
发表于 2017-6-29 23:18:46
|
显示全部楼层
|
阅读模式
在routes.php里面设置:$route['default_controller'] ='welcome';,这个是系统缺省的没问题!
改为:$route['default_controller'] ='welcome/index';,这个也没问题!
改为:$route['default_controller'] ='welcome/index/1';,给方法增加一个参数,结果页面就是404 Page Not Found
各位大神有没有解决方案?
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
aard
aard
当前离线
积分
155
IP卡
狗仔卡
楼主
|
发表于 2017-6-30 09:13:25
|
显示全部楼层
已经解决。问题出在Router.php的下面一句
if (sscanf($this->default_controller, '%[^/]/%s', $class, $method) !== 2)
它只解析class和method,不负责param。
所以做一个MY_router扩展一下即可。
注:需要支持参数的目的是方便后台设置某一个文章或者任何一个应用页做首页。
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50192
IP卡
狗仔卡
发表于 2017-6-30 10:19:22
|
显示全部楼层
路由里肯定不能带参数啊,不建议你这样扩展路由类,默认参数你可以放到控制器的方法里,路由就应该做路由应该做的事情。
回复
支持
反对
使用道具
举报
显身卡
aard
aard
当前离线
积分
155
IP卡
狗仔卡
楼主
|
发表于 2017-6-30 10:36:32
|
显示全部楼层
会认真考虑hex的建议。谢谢!
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页