我在rails中遇到了一些数字格式问题。
在处理字符串格式化以及文档资源时,我尝试了社区的一些建议:
http://edgeapi.rubyonrails.org/classes/ActiveSupport/NumberHelper.html#method-i-number_to_phone
我试过的是这些:
<%= number_to_phone(client.phone, {:groupings => [4,3,3], delimiter: "-"}) %>
和
<%= number_to_phone(client.phone, pattern: /(\d{2})(\d{5})(\d{5})$/)) %>
即使文件声明:
,这些都不适合我将号码格式化为电话号码(默认为美国,例如,(555)123-9876)。您可以在选项哈希中自定义格式。
,提供的示例是:
number_to_phone(13312345678, pattern: /(\d{3})(\d{4})(\d{4})$/))
=&GT; “133-1234-5678”
我想将其格式化为:
(12)-3456-7890
我缺少什么,所以这段代码按照我期望的方式工作?
答案 0 :(得分:3)
:pattern
选项仅为added to Rails 5.0.0 rc1。它在Rails 4中不起作用。所以我猜你运气不好,除非你更新到Rails 5。
答案 1 :(得分:2)
如果您愿意,可以随时编写自己的帮助方法:
def num_to_phone(num)
"(#{ num[0..1] })-#{ num[2..5] }-#{ num[6..-1] }"
end