我已经阅读了许多关于此的帖子,但我仍然感到困惑。我对 Rails 比较陌生。我在 Rails 3.2.8 和 Ruby 1.9.3 上。
我有一个表单,我想为 2 个不同的表创建记录。这是一个多对多的关系(日志可以有多架飞机,飞机将出现在多个日志中)。
这是我的代码:
# ----- Models ----- #
class Logbook < ActiveRecord::Base
has_and_belongs_to_many :aircrafts
accepts_nested_attributes_for :aircrafts
end
class Aircraft < ActiveRecord::Base
belongs_to :logbook
end
# ----- Logbooks Controller ----- #
def my_method
@logbook = Logbook.new
@aircraft = Aircraft.new
end
# ----- View ----- #
<%= form_for @logbook, validate: true, remote: true do |f| %>
<%= f.label :flight_date, "Flight Date" %>
<%= f.text_field :flight_date %>
...
<%= f.fields_for :aircrafts, validate: true, remote: true do |a| %>
<%= a.label :aircraft_id, "Aircraft ID" %>
<%= a.text_field :aircraft_id %>
...
<% end %>
<% end %>
日志字段渲染良好,但飞机字段不渲染。
有任何想法吗?