Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
90dba008
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
90dba008
编写于
3月 09, 2009
作者:
A
Andrew Bloom
提交者:
Pratik Naik
3月 09, 2009
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Ensure blank path_prefix works as expected [#2122 state:resolved]
Signed-off-by:
N
Pratik Naik
<
pratiknaik@gmail.com
>
上级
1d88a111
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
34 addition
and
3 deletion
+34
-3
actionpack/lib/action_controller/routing/builder.rb
actionpack/lib/action_controller/routing/builder.rb
+2
-1
actionpack/test/controller/routing_test.rb
actionpack/test/controller/routing_test.rb
+32
-2
未找到文件。
actionpack/lib/action_controller/routing/builder.rb
浏览文件 @
90dba008
...
...
@@ -159,7 +159,8 @@ def build(path, options)
path
=
"/
#{
path
}
"
unless
path
[
0
]
==
?/
path
=
"
#{
path
}
/"
unless
path
[
-
1
]
==
?/
path
=
"/
#{
options
[
:path_prefix
].
to_s
.
gsub
(
/^\//
,
''
)
}#{
path
}
"
if
options
[
:path_prefix
]
prefix
=
options
[
:path_prefix
].
to_s
.
gsub
(
/^\//
,
''
)
path
=
"/
#{
prefix
}#{
path
}
"
unless
prefix
.
blank?
segments
=
segments_for_route_path
(
path
)
defaults
,
requirements
,
conditions
=
divide_route_options
(
segments
,
options
)
...
...
actionpack/test/controller/routing_test.rb
浏览文件 @
90dba008
...
...
@@ -955,6 +955,13 @@ def test_named_route_with_path_prefix
x
.
send
(
:page_url
))
end
def
test_named_route_with_blank_path_prefix
rs
.
add_named_route
:page
,
'page'
,
:controller
=>
'content'
,
:action
=>
'show_page'
,
:path_prefix
=>
''
x
=
setup_for_named_route
assert_equal
(
"http://test.host/page"
,
x
.
send
(
:page_url
))
end
def
test_named_route_with_nested_controller
rs
.
add_named_route
:users
,
'admin/user'
,
:controller
=>
'admin/user'
,
:action
=>
'index'
x
=
setup_for_named_route
...
...
@@ -2130,11 +2137,9 @@ def test_namespace_with_path_prefix
Object
.
const_set
(
:Api
,
Module
.
new
{
|
m
|
m
.
const_set
(
:ProductsController
,
Class
.
new
)
})
set
.
draw
do
|
map
|
map
.
namespace
'api'
,
:path_prefix
=>
'prefix'
do
|
api
|
api
.
route
'inventory'
,
:controller
=>
"products"
,
:action
=>
'inventory'
end
end
request
.
path
=
"/prefix/inventory"
...
...
@@ -2146,6 +2151,24 @@ def test_namespace_with_path_prefix
Object
.
send
(
:remove_const
,
:Api
)
end
def
test_namespace_with_blank_path_prefix
Object
.
const_set
(
:Api
,
Module
.
new
{
|
m
|
m
.
const_set
(
:ProductsController
,
Class
.
new
)
})
set
.
draw
do
|
map
|
map
.
namespace
'api'
,
:path_prefix
=>
''
do
|
api
|
api
.
route
'inventory'
,
:controller
=>
"products"
,
:action
=>
'inventory'
end
end
request
.
path
=
"/inventory"
request
.
env
[
"REQUEST_METHOD"
]
=
"GET"
assert_nothing_raised
{
set
.
recognize
(
request
)
}
assert_equal
(
"api/products"
,
request
.
path_parameters
[
:controller
])
assert_equal
(
"inventory"
,
request
.
path_parameters
[
:action
])
ensure
Object
.
send
(
:remove_const
,
:Api
)
end
def
test_generate_finds_best_fit
set
.
draw
do
|
map
|
map
.
connect
"/people"
,
:controller
=>
"people"
,
:action
=>
"index"
...
...
@@ -2210,6 +2233,13 @@ def test_generate_with_path_prefix
assert_equal
"/my/foo/bar/7?x=y"
,
set
.
generate
(
args
)
end
def
test_generate_with_blank_path_prefix
set
.
draw
{
|
map
|
map
.
connect
':controller/:action/:id'
,
:path_prefix
=>
''
}
args
=
{
:controller
=>
"foo"
,
:action
=>
"bar"
,
:id
=>
"7"
,
:x
=>
"y"
}
assert_equal
"/foo/bar/7?x=y"
,
set
.
generate
(
args
)
end
def
test_named_routes_are_never_relative_to_modules
set
.
draw
do
|
map
|
map
.
connect
"/connection/manage/:action"
,
:controller
=>
'connection/manage'
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录