0

使用 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?

4

0 回答 0