我想让编辑表单域尽可能方便用户使用。例如,对于数值,我希望该字段以逗号显示(如 number_with_precision
)。
这在显示方面很容易,但是编辑呢?有什么好的方法吗?
我正在使用 Rails FormBuilder。经过调查,我发现它使用了 InstanceTag,它通过使用 <attribute>_value_before_type_cast
获取字段的值。这意味着覆盖 <attribute>
不会被调用。
最佳答案
到目前为止我想出的最好的是这样的:
<%= f.text_field :my_attribute, :value => number_with_precision(f.object.my_attribute) %>
或者 my_attribute
可以返回格式化值,如下所示:
def my_attribute
ApplicationController.helpers.number_with_precision(read_attribute(:my_attribute))
end
但是你还是要用:value
<%= f.text_field :my_attribute, :value => f.object.my_attribute %>
这看起来工作量很大。
关于ruby-on-rails - 如何格式化 Rails 编辑字段中显示的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/591939/