Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
65ce3d12
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,发现更多精彩内容 >>
提交
65ce3d12
编写于
6月 19, 2010
作者:
A
Andrew White
提交者:
José Valim
6月 20, 2010
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Accept an object for :constraints option [#4904 state:resolved]
Signed-off-by:
N
José Valim
<
jose.valim@gmail.com
>
上级
72725d7b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
9 addition
and
1 deletion
+9
-1
actionpack/lib/action_dispatch/routing/mapper.rb
actionpack/lib/action_dispatch/routing/mapper.rb
+1
-1
actionpack/test/dispatch/routing_test.rb
actionpack/test/dispatch/routing_test.rb
+8
-0
未找到文件。
actionpack/lib/action_dispatch/routing/mapper.rb
浏览文件 @
65ce3d12
...
@@ -102,7 +102,7 @@ def conditions
...
@@ -102,7 +102,7 @@ def conditions
end
end
def
requirements
def
requirements
@requirements
||=
(
@options
[
:constraints
]
||
{}).
tap
do
|
requirements
|
@requirements
||=
(
@options
[
:constraints
]
.
is_a?
(
Hash
)
?
@options
[
:constraints
]
:
{}).
tap
do
|
requirements
|
requirements
.
reverse_merge!
(
@scope
[
:constraints
])
if
@scope
[
:constraints
]
requirements
.
reverse_merge!
(
@scope
[
:constraints
])
if
@scope
[
:constraints
]
@options
.
each
{
|
k
,
v
|
requirements
[
k
]
=
v
if
v
.
is_a?
(
Regexp
)
}
@options
.
each
{
|
k
,
v
|
requirements
[
k
]
=
v
if
v
.
is_a?
(
Regexp
)
}
end
end
...
...
actionpack/test/dispatch/routing_test.rb
浏览文件 @
65ce3d12
...
@@ -68,6 +68,8 @@ def self.matches?(request)
...
@@ -68,6 +68,8 @@ def self.matches?(request)
get
'admin/accounts'
=>
"queenbee#accounts"
get
'admin/accounts'
=>
"queenbee#accounts"
end
end
get
'admin/passwords'
=>
"queenbee#passwords"
,
:constraints
=>
::
TestRoutingMapper
::
IpRestrictor
scope
'pt'
,
:name_prefix
=>
'pt'
do
scope
'pt'
,
:name_prefix
=>
'pt'
do
resources
:projects
,
:path_names
=>
{
:edit
=>
'editar'
,
:new
=>
'novo'
},
:path
=>
'projetos'
do
resources
:projects
,
:path_names
=>
{
:edit
=>
'editar'
,
:new
=>
'novo'
},
:path
=>
'projetos'
do
post
:preview
,
:on
=>
:new
post
:preview
,
:on
=>
:new
...
@@ -501,6 +503,12 @@ def test_admin
...
@@ -501,6 +503,12 @@ def test_admin
get
'/admin/accounts'
,
{},
{
'REMOTE_ADDR'
=>
'10.0.0.100'
}
get
'/admin/accounts'
,
{},
{
'REMOTE_ADDR'
=>
'10.0.0.100'
}
assert_equal
'pass'
,
@response
.
headers
[
'X-Cascade'
]
assert_equal
'pass'
,
@response
.
headers
[
'X-Cascade'
]
get
'/admin/passwords'
,
{},
{
'REMOTE_ADDR'
=>
'192.168.1.100'
}
assert_equal
'queenbee#passwords'
,
@response
.
body
get
'/admin/passwords'
,
{},
{
'REMOTE_ADDR'
=>
'10.0.0.100'
}
assert_equal
'pass'
,
@response
.
headers
[
'X-Cascade'
]
end
end
end
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录