我在Rails中创建了一个表单,当我向text_field添加一个CSS类时,表单将不会提交。
我还是新手,所以任何帮助都会非常感激。
这是我的表格:
<% @page_title = "Contact" %>
<hr>
<div class="col-lg-12">
<h1 class="page-header">
BK Legal Courier Corp <br />Call BK @ <span style="color:#47B224">613-286-8265</span>
</h1>
</div>
<hr>
<div class="container">
<h2>Contact Us</h2>
<%= form_for :fc, :url => {:action => 'create'} do |f| %>
<div class="form-group">
<%= f.label :first_name %>
<%= f.text_field (:first_name, :class => 'form-control')%>
</div>
<div class="form-group">
<%= f.label :last_name %>
<%= f.text_field (:last_name, :class => 'form-control') %>
</div>
<div class="form-group">
<%= f.label :email %>
<%= f.text_field (:email, :class => 'form-control') %>
</div>
<div class="form-group">
<%= f.label :comment %>
<%= f.text_area (:comment, :class => 'form-control') %>
</div>
<div class="form-group">
<%= f.label :referral %>
<%= f.select (:referral, [['Friends', 1], ['News', 2], ['Online', 3], ['Other', 4]], :class => 'form-control')%>
</div>
<%= submit_tag ("Submit") %>
</form>
</div>
<% end %>
</body>
</html>
问题是我的表单只会在没有:class =&gt;的情况下提交&#34;形状控制&#34;在里面。我必须在每个表单字段变量周围加上括号。
这是我的routes.rb文件:
Rails.application.routes.draw do
root "home#index"
match ':controller(/:action(/:id))', :via => [:get, :post]
end
这是我的控制者:
class HomeController < ApplicationController
def home
render("home/index")
end
def new
@fc = FeedbackCustomer.new
end
def create
# Instantiate a new object using form parameters
@fc = FeedbackCustomer.new(feedbackcustomer_params)
if @fc.save
redirect_to(:action => "home")
end
end
def application
end
private
def feedbackcustomer_params
params.require(:fc).permit(:first_name, :last_name,
:email, :comment, :referral)
end
end
非常感谢任何帮助。谢谢!
答案 0 :(得分:4)
如果你正在使用Ruby 1.9+这应该可行:
<%= f.text_field :last_name, class: 'form-control' %>
如果您使用的版本超过1.9,那么这应该可行:
<%= f.text_field :last_name, :class => 'form-control' %>
有关详细信息,请使用ActionView::Helpers::FormTagHelper API Documentation
Form Helpers Rails Guide也可能对您有所帮助。
答案 1 :(得分:3)
对于最新版本的Ruby,您现在也可以这样做:
<%= f.text_field :last_name, class: 'form-control' %>