我们在2.0上运行了一个cakephp应用程序,我们似乎对Firefox有一些编码问题。
我们访问的URL是/ newcms / core / users / index / conditions [User] [group_id]:6在cms系统中应用过滤器。
除了FireFox之外,我们在请求对象上获得以下内容
[params] => Array
(
[plugin] => core
[controller] => users
[action] => newcms_index
[named] => Array
(
[conditions] => Array
(
[User] => Array
(
[group_id] => 6
)
)
)
[pass] => Array
(
)
[prefix] => newcms
)
哪个是正确的,一切正常,如果我们在FireFox中转到相同的网址
[params] => Array
(
[plugin] => core
[controller] => users
[action] => newcms_index
[named] => Array
(
[conditions%5BUser%5D%5Bgroup_id%5D] => 6
)
[pass] => Array
(
)
[prefix] => newcms
)
我尝试过编码指定条件值的URL,但没有运气..
有什么建议吗?
答案 0 :(得分:2)
在您的网址中使用括号和数组结构可能不是一个好主意。
为什么不使用这样的东西?:
/newcms/core/users/index/user_group:6
然后处理控制器中的数据。
答案 1 :(得分:0)
经过一段时间的挖掘和玩弄GitHub中最新版本的蛋糕后,我已经修复了这个FF问题(https://github.com/cakephp/cakephp/commit/e6905b44c3d4512b6989c59a1489bc983d88bcdc)。
在URI中传递方括号没有什么不对,这只是FF编码方式与其他浏览器不同的问题。