Rails将表单字段分成两个,即米和毫米

时间:2013-12-08 17:16:23

标签: ruby-on-rails forms ruby-on-rails-4

我在rails中有一个number_field,是否有一种简单的方法可以将输入框分成两部分,即有米的输入和毫米的输入?

1 个答案:

答案 0 :(得分:0)

您可以在模型上使用两个虚拟属性。我假设您的模型名为Model,现有属性名为unit

class Model < ActiveRecord::Base
  attr_accessor :unit_metres, :unit_millimetres

  def unit_metres=(value)
    @unit_metres = value
    self.unit = @unit_metres * 1000 + unit_millimetres
  end

  def unit_millimetres=(value)
    @unit_millimetres = value
    self.unit = unit_metres + @unit_millimetres
  end
end

现在,不要在表单中使用<%= number_field :unit %>,而是使用<%= number_field :unit_metres %><%= number_field :unit_millimetres %>