Rails 添加 Foundation 后表单不会提交

Rails form won't submit after adding Foundation

我将 Foundation-Rails gem 添加到我的应用程序,现在我的表单无法提交。控制台没有错误,它正在触发一个新事件,但它没有将其添加到数据库中,而是将表单提交信息放入 URL 栏中。所以,它看起来像这样:

http://localhost:3000/submissions/new?utf8=%E2%9C%93&authenticity_token=T9qweZClsZHL%2B6hzepcz%2BipG4W5p5VEzxO9PcB7FJ%2F6lun8wHVbvtGRe8JZC1rqay5DEMCm%2F06RzQh91G6cRGA%3D%3D&submission%5Bsubmission_link%5D=test&submission%5Blocation%5D=test&submission%5Bbedrooms%5D=0&submission%5Bbathrooms%5D=0&submission%5Bimg1%5D=asdf&submission%5Bimg2%5D=asdf&submission%5Bimg2%5D=asdf&commit=Create+Submission

知道为什么添加 Foundation 会破坏我的表单吗?如何修复它?从昨晚到今天早上,这确实是我唯一改变的地方。

服务器日志如下所示:

Started GET "/submissions/new" for ::1 at 2016-09-11 13:49:33 +0200
Processing by SubmissionsController#new as HTML
  Rendered submissions/_form.html.erb (1.9ms)
  Rendered submissions/new.html.erb within layouts/application (2.7ms)
Completed 200 OK in 65ms (Views: 64.8ms | ActiveRecord: 0.0ms)


Started GET "/submissions/new?utf8=%E2%9C%93&authenticity_token=bFFTEWjFXdAojQStCTMLMU2IzNch42jwKWB%2FZPi5G4SGMZxY5TYD9YcoXEgxcoJRrF7piWG56meezS9h%2FdstYg%3D%3D&submission%5Bsubmission_link%5D=asdfas&submission%5Blocation%5D=asdfa&submission%5Bbedrooms%5D=0&submission%5Bbathrooms%5D=0&submission%5Bimg1%5D=asd&submission%5Bimg2%5D=as&submission%5Bimg2%5D=ads&commit=Create+Submission" for ::1 at 2016-09-11 13:49:53 +0200
Processing by SubmissionsController#new as HTML
  Parameters: {"utf8"=>"���", "authenticity_token"=>"bFFTEWjFXdAojQStCTMLMU2IzNch42jwKWB/ZPi5G4SGMZxY5TYD9YcoXEgxcoJRrF7piWG56meezS9h/dstYg==", "submission"=>{"submission_link"=>"asdfas", "location"=>"asdfa", "bedrooms"=>"0", "bathrooms"=>"0", "img1"=>"asd", "img2"=>"ads"}, "commit"=>"Create Submission"}
  Rendered submissions/_form.html.erb (3.0ms)
  Rendered submissions/new.html.erb within layouts/application (3.9ms)
Completed 200 OK in 67ms (Views: 65.9ms | ActiveRecord: 0.0ms)

我的表单代码如下所示:

<form>

  <%= form_for (@submission) do |submission| %>

    <div class="row">
      <div class="medium-6 columns">
        <label>Listing Link
          <%= submission.text_field :submission_link, placeholder: "Add the URL for the listing." %>
        </label>
      </div>
      <div class="medium-6 columns">
        <label>Location
          <%= submission.text_field :location, placeholder: "City, Country" %>
        </label>
      </div>
    </div>

    <div class="row">
      <div class="medium-6 columns">
        <label>Bedrooms
          <%= submission.select :bedrooms, ["0", "1", "2", "3+"]%>
        </label>
      </div>
      <div class="medium-6 columns">
        <label>Private Bathrooms
          <%= submission.select :bathrooms, ["0", "1", "2", "3+"]%>
        </label>
      </div>
    </div>

    <div class="row">
      <div class="medium-4 columns">
        <label>Image 1
          <%= submission.text_field :img1, placeholder: "http://i.imgur.com/bCd9Qwl.png?1" %>
        </label>
      </div>
      <div class="medium-4 columns">
        <label>Image 2
          <%= submission.text_field :img2, placeholder: "http://i.imgur.com/bCd9Qwl.png?1" %>
        </label>
      </div>
      <div class="medium-4 columns">
        <label>Image 2
          <%= submission.text_field :img2, placeholder: "http://i.imgur.com/bCd9Qwl.png?1" %>
        </label>
      </div>
    </div>

    <div class="row">
      <div class="medium-12 columns">
        <%= submission.submit %>
      </div>
    </div>

  <% end %>

</form>

我的控制器:

class SubmissionsController < ApplicationController

  def index
    @submissions = Submission.all
  end

  def new
    @submission = Submission.new
  end

  def create
    @submission = Submission.new(submission_params)
    if @submission.save
      redirect_to @submission
    else
      render :new
    end
  end

  private

  def submission_params
    params.require(:submission).permit(:submission_link, :title, :location, :bedrooms, :bathrooms, :img1, :img2, :img3)
  end
end

您在 form_for 之前有一个 <form> 标签。删除 HTML 表单标签,form_for 将插入正确的标签。