我这里有一个非常简单的问题。我只想知道是否有现成的Rails方法来实现这一目标,因为我不想重新编写已经在框架中的东西。
想一个像“this_is_an_example”这样的下划线变量名。有没有一种快速的方法可以使用Rails将其转换为“这是一个例子”甚至“这是一个例子”?我知道ActiveRecord打印表格列名如“first_name”作为“名字”,它是如何做到的?
谢谢!
答案 0 :(得分:5)
已经存在的东西叫做Inflector。查看http://api.rubyonrails.org/classes/ActiveSupport/Inflector.html处的文档。
其中列出的所有方法都有关于字符串的新方法,所以在你的情况下:
st = "this_is_an_example"
st.humanize # => "This is an example"
st.titleize # => "This Is An Example"
答案 1 :(得分:2)
ruby脚本/控制台 加载开发环境(Rails 2.3.8)
“this_is_an_example” .titleize => “这是一个例子”
“this_is_an_example” .humanize => “这是一个例子”
答案 2 :(得分:1)
在询问之前我应该看一点解决方案。
>> string = "an_example_string"
=> "an_example_string"
>> string.titleize
=> "An Example String"
>>
在此处找到相关文档:http://api.rubyonrails.org/classes/ActiveSupport/CoreExtensions/String/Inflections.html#M001058