使用 Rails 3.2,如何访问由 ajax 加载的嵌入式表单中关联对象的 id?
例如,我有一个名为 Hotels 的对象。每家酒店都有_许多房间。当我编辑酒店时,我想在酒店编辑页面上使用 ajax 加载的新客房表单向该酒店添加新客房。
我首先在房间索引页面上使用 jquery 创建所有 ajax。那里一切正常,但我没有酒店 ID,所以我提供了一个酒店选择下拉框。现在,我想直接在酒店编辑页面上添加一个新房间。我不明白如何将酒店 ID (@hotel.id) 传递给新加载的 ajax 房间 _form.html.erb 部分。在 _form.html.erb 部分,我有:
<% if defined?(@hotel.id) %>
<%= f.hidden_field :hotel_id, :value => @hotel.id %>
<% else %>
<%= f.collection_select(:hotel_id, Hotel.all, :id, :name) %>
<% end %>
在酒店编辑页面上,我有一个添加新房间的链接:
<%= link_to 'Add a Room', new_room_path, :remote=>true, :class => 'new_room' %>
在我的 rooms_controller.rb 中,我有:
# GET /rooms/new
# GET /rooms/new.json
def new
@room = Room.new
render :partial => 'form', :locals => { :room => @room }
end
如何在我的 ajax 加载的新 Room _form.html.erb 部分中获取关联的@hotel.id?