轨道 4 和fields_for使用种子数据.如何预填充表单



目标是用种子数据预填充表单:https://github.com/ornerymoose/GarageApp

用于

迭代摊位编号的相关代码如下garages_controller.rb

  def new
    @garage = Garage.new
    for i in 1..5 
      @garage.cars.build :stall_number => i
    end
  end

这将提供 5 个stall_number字符串值 1、2、3、4 和 5。取而代之的是,我将如何迭代seeds.rb文件中的值?

Car.create(stall_number: "stall1")
Car.create(stall_number: "stall2")
Car.create(stall_number: "stall3")
Car.create(stall_number: "stall4")
Car.create(stall_number: "stall5")

因此,stall_numbers的值不是 1、2、3、4 和 5。它们将具有 seeds.rb 文件中列出的字符串值。

这是车库_form.html.erb中的fields_for块:

  <%= f.fields_for :cars do |builder| %>
      <p>Enter license for car parked in stall: <%= builder.object.stall_number %></p>
      <%= builder.label :license, "License #:" %><br />
      <%= builder.text_field :license %>
  <% end %>

非常感谢对此事的任何投入。

只需在种子文件中执行相同的循环即可。

for i in 1..5 
  Car.create(stall_number: "stall" + i.to_s)
end

如果它们是静态的,只需在数组中创建它们并调用它们。

array = ["stallA", "stallDC", "stall874", "stallNN", "stallPO", "stalSF", "stallRE", "stall456", "stall39", "stall99"]
array.each {|x| Car.create(stall_number: x)}

相关内容

  • 没有找到相关文章

最新更新