我是Rails的新手,我正在尝试弄清楚如何使用http://apidock.com/rails/ActionView/Helpers/NumberHelper/number_to_phone中的示例来格式化我的代码中的电话号码。试图找出我如何以及在何处拨打number_to_phone(number,options = {})public
gl
答案 0 :(得分:3)
您应该通过控制器中的实例变量@your_variable
将电话号码或包含电话号码的对象传递给您的视图。让我们假设您要处理的实例具有属性phone_number。
在视图文件中,您应该执行以下操作:
<%= form_for @person do |f| %>
<%= f.telephone_field(:phone, :value => @your_variable.phone_number ) %>
<%= f.submit %>
<% end %>
如果您想要一个HTML输入字段,您应该在视图中使用适当的表单助手,例如:telephone_field
请参阅:http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html
答案 1 :(得分:1)
首先,您必须知道number_to_phone
方法不会返回HTML输入字段。它返回String
。因此,使用该方法格式化的是已保存的电话。
以下代码将显示在输入文本字段中格式化的已保存电话。
<%= f.text_field :phone, class: 'form-control', autofocus: true, placeholder: 'xxx-xxx-xxxx', value: number_to_phone(@my_variable.telephone, area_code: true, extension: 555) %>
如果您正在寻找一种动态屏蔽输入字段的方法(如用户在文本中键入的那样),您将需要使用jQuery库,例如maskedInput
答案 2 :(得分:0)
您可以在show.html.erb
中使用它<%= number_to_phone(@contact.phone) %>
答案 3 :(得分:0)
您在rails帮助器或视图中使用number_to_phone(number,options = {})
以下是用于格式化手机的助手示例 How do you use number_to_phone in Rails 3?