将Rails中的下划线名称转换为"漂亮"文本(与ActiveRecord一样)

Joh*_*ohn 1 string ruby-on-rails

我这里有一个非常简单的问题.我只想知道是否有现成的Rails方法来实现这一目标,因为我不想重新编写已经在框架中的东西.

想想一个像"this_is_an_example"这样的下划线变量名.有没有一种快速的方法可以使用Rails将其转换为"这是一个例子"甚至"这是一个例子"?我知道ActiveRecord打印表列名如"first_name"作为"First Name",它是如何做到的?

谢谢!

Cho*_*ett 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"
Run Code Online (Sandbox Code Playgroud)