Ruby on rails 如何访问ajax加载表单中的关联对象id
使用Rails3.2,如何访问ajax加载的嵌入式表单中关联对象的id 例如,我有一个名为Hotels的对象。每家旅馆都有许多房间。当我编辑一家酒店时,我想使用酒店编辑页面上加载了ajax的新房间表单向该酒店添加新房间 我首先在Rooms索引页面上使用jquery创建所有ajax。那里一切都很好,但我没有酒店ID,所以我提供了一个酒店选择下拉框。现在,我想直接在酒店编辑页面上添加一个新房间。我不明白如何将酒店ID(@Hotel.ID)传递到新的ajax加载的房间\u form.html.erb。在_form.html.erb部分中,我有:Ruby on rails 如何访问ajax加载表单中的关联对象id,ruby-on-rails,ruby-on-rails-3,jquery,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3,Jquery,Ruby On Rails 3.2,使用Rails3.2,如何访问ajax加载的嵌入式表单中关联对象的id 例如,我有一个名为Hotels的对象。每家旅馆都有许多房间。当我编辑一家酒店时,我想使用酒店编辑页面上加载了ajax的新房间表单向该酒店添加新房间 我首先在Rooms索引页面上使用jquery创建所有ajax。那里一切都很好,但我没有酒店ID,所以我提供了一个酒店选择下拉框。现在,我想直接在酒店编辑页面上添加一个新房间。我不明白如何将酒店ID(@Hotel.ID)传递到新的ajax加载的房间\u 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 %>
如何在ajax加载的新房间中获取相关的@hotel.id\u form.html.erb partial?我建议您将
new\u Room\u路径中的hotel\u id作为参数传递。可以给出一个如何执行此操作的示例吗?只需配置routes.rb
文件以接受一个参数,例如添加/:hotel\u id
。然后,您可以通过hotel\u id=params[:hotel\u id]
在控制器中访问它。差不多吧。
<%= link_to 'Add a Room', new_room_path, :remote=>true, :class => 'new_room' %>
# GET /rooms/new
# GET /rooms/new.json
def new
@room = Room.new
render :partial => 'form', :locals => { :room => @room }
end