我将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
答案 0 :(得分:1)
<form>
之前有一个form_for
标记。摆脱HTML表单标记,form_for
将插入正确的标记。