Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
cf662783
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,发现更多精彩内容 >>
提交
cf662783
编写于
10月 04, 2014
作者:
M
Matthew Draper
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #14146 from chewi/fix-underscore-acronyms-regex
Fix underscore inflector handling of namespaced and adjacent acronyms
上级
657ce178
6a8464fa
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
8 addition
and
1 deletion
+8
-1
activesupport/CHANGELOG.md
activesupport/CHANGELOG.md
+4
-0
activesupport/lib/active_support/inflector/methods.rb
activesupport/lib/active_support/inflector/methods.rb
+1
-1
activesupport/test/inflector_test.rb
activesupport/test/inflector_test.rb
+3
-0
未找到文件。
activesupport/CHANGELOG.md
浏览文件 @
cf662783
*
Corrected Inflector#underscore handling of multiple successive acroynms.
*James Le Cuirot*
*
Delegation now works with ruby reserved words passed to
`:to`
option.
Fixes #16956.
...
...
activesupport/lib/active_support/inflector/methods.rb
浏览文件 @
cf662783
...
...
@@ -91,7 +91,7 @@ def camelize(term, uppercase_first_letter = true)
def
underscore
(
camel_cased_word
)
return
camel_cased_word
unless
camel_cased_word
=~
/[A-Z-]|::/
word
=
camel_cased_word
.
to_s
.
gsub
(
'::'
,
'/'
)
word
.
gsub!
(
/(?
:([A-Za-z\d])|\b)(
#{
inflections
.
acronym_regex
}
)(?=\b|[^a-z])/
)
{
"
#{
$1
}
#{
$1
&&
'_'
}#{
$2
.
downcase
}
"
}
word
.
gsub!
(
/(?
<=([A-Za-z\d])|\b)(
#{
inflections
.
acronym_regex
}
)(?=\b|[^a-z])/
)
{
"
#{
$1
&&
'_'
}#{
$2
.
downcase
}
"
}
word
.
gsub!
(
/([A-Z\d]+)([A-Z][a-z])/
,
'\1_\2'
)
word
.
gsub!
(
/([a-z\d])([A-Z])/
,
'\1_\2'
)
word
.
tr!
(
"-"
,
"_"
)
...
...
activesupport/test/inflector_test.rb
浏览文件 @
cf662783
...
...
@@ -125,6 +125,9 @@ def test_acronyms
[
"PhDRequired"
,
"phd_required"
,
"PhD required"
,
"PhD Required"
],
[
"IRoRU"
,
"i_ror_u"
,
"I RoR u"
,
"I RoR U"
],
[
"RESTfulHTTPAPI"
,
"restful_http_api"
,
"RESTful HTTP API"
,
"RESTful HTTP API"
],
[
"HTTP::RESTful"
,
"http/restful"
,
"HTTP/RESTful"
,
"HTTP/RESTful"
],
[
"HTTP::RESTfulAPI"
,
"http/restful_api"
,
"HTTP/RESTful API"
,
"HTTP/RESTful API"
],
[
"APIRESTful"
,
"api_restful"
,
"API RESTful"
,
"API RESTful"
],
# misdirection
[
"Capistrano"
,
"capistrano"
,
"Capistrano"
,
"Capistrano"
],
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录