在视图中输出整数作为电话号码格式

时间:2015-03-28 23:06:32

标签: ruby-on-rails ruby-on-rails-3

我试图将此显示为格式化的电话号码,如:xxx-xxx-xxxx而不是像目前一​​样的数字字符串..任何帮助都会很棒!

<% if @post.phone.present? %>
    <h4>Phone: <small> <%= @post.phone %><br></h4>
<% end %> 

2 个答案:

答案 0 :(得分:2)

您可以使用number_to_phone帮助器,如下所示:

<% if @post.phone.present? %>
   <h4>Phone: <small> <%= number_to_phone @post.phone %><br></h4>
<% end %> 

默认情况下,它将电话号码格式化为xxx-xxx-xxxx:

2.1.1 :009 > number_to_phone(1235551234)  
 => "123-555-1234" 
2.1.1 :010 > number_to_phone("1235551234")  
 => "123-555-1234" 

答案 1 :(得分:0)

使用phone gem。 https://github.com/carr/phone

pn = Phoner::Phone.parse('+385915125486')
pn.to_s # => "+385915125486"
pn.format("%A/%f-%l") # => "091/512-5486"
pn.format("+ %c (%a) %n") # => "+ 385 (91) 5125486"
pn.format(:europe) # => "+385 (0) 91 512 5486"
pn.format(:us) # => "(234) 123-4567"
pn.format(:default_with_extension) # => "+3851234567x143"