添加基金会

时间:2016-09-11 11:56:07

标签: ruby-on-rails ruby forms zurb-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

任何想法为什么添加基金会打破我的形式以及如何解决它?从昨晚到今天早上,这是我唯一改变的事情。

服务器日志如下所示:

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

1 个答案:

答案 0 :(得分:1)

<form>之前有一个form_for标记。摆脱HTML表单标记,form_for将插入正确的标记。