【问题标题】:form_for with nested resource doesn't submit a post-request具有嵌套资源的 form_for 不提交后请求
【发布时间】:2011-11-07 23:07:24
【问题描述】:

首先:我保证我已经阅读了有关该主题的所有帖子,搜索了整个网络,但仍然不知道......

我必须为 Trip (has_many) 和 Accomodation (belongs_to) 建模。 住宿嵌套在旅行中:

resources :trips do
    resources :routes, :accomodations
end

控制器长这样:

def new
  @accomodation = Accomodation.new
end

def create
   @accomodation  = Accomodation.new(params[:accomodation])
   if @accomodation.save
     flash[:success] = "Accomodation created!"
     redirect_to new_trip_accomodation_path(@trip)
   else
     render 'pages/home'
  end
end

形式:

<%= form_for([@trip, @accomodation]) do |f| %>
    <%= render 'shared/error_messages', :object => f.object %>
    <div class="field">
           <%= f.label :title, "Titel" %>
           <%= f.text_field :title %>
    </div>
    <div class="field">
    <%= f.label :description, "Beschreibung" %>
    <%= f.text_field :description %>
    </div>

   <div class="actions">
       <%= f.submit "Create" %>
   </div> 
<% end %>

表单呈现正确的 html(据我所知):

<form accept-charset="UTF-8" action="/trips/51/accomodations" class="new_accomodation" id="new_accomodation" method="post">

好的,所以当我提交表单时,什么也没有发生。 当我查看服务器日志时,我可以看到呈现新表单的获取请求。但是对提交没有反应... 表格根本不提交吗?为什么?我完全不知道。

我还尝试了什么?

 <%= form_for([@trip, @accomodation], :url => { :action => :create }, :method => :post) do |f| %>

什么都没有。

 <%= form_for([@trip, @accomodation], :url => { :action => :create }, :method => :post) do |f| %>

也没有。

<%= form_for([@trip, @accomodation, @trip.accomodations.new]) do |f| %>

算了。

谁能帮忙。有什么线索可以开始挖掘吗?

提前致谢!

【问题讨论】:

    标签: ruby-on-rails form-for nested-resources


    【解决方案1】:

    如果此请求没有服务器日志,则意味着浏览器不会触发提交操作。您是否有一些可能会干扰提交操作的 javascript?尝试删除标题中包含的所有 javascript 并再次测试。 希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      你确定后面的那行

      <form accept-charset="UTF-8" action="/trips/51/accomodations" class="new_accomodation" id="new_accomodation" method="post">
      

      不是

      </form>
      

      ?

      【讨论】:

        猜你喜欢
        • 2011-01-03
        • 1970-01-01
        • 2011-01-16
        • 1970-01-01
        • 1970-01-01
        • 2012-07-08
        • 1970-01-01
        相关资源
        最近更新 更多