【问题标题】:Ruby on Rails - adding CSS to text_fieldRuby on Rails - 将 CSS 添加到 text_field
【发布时间】:2015-05-11 17:19:50
【问题描述】:

我在 Rails 中创建了一个表单,当我将 CSS 类添加到 text_field 时,表单不会提交。

我对 Rails 还是很陌生,因此我们将不胜感激。

这是我的表格:

<% @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=> "form-control" 的情况下提交。我必须在每个表单字段变量周围加上括号。

这是我的 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

任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: css ruby-on-rails forms ruby-on-rails-4


    【解决方案1】:

    如果您使用的是 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 也可能对您有所帮助。

    【讨论】:

      【解决方案2】:

      对于最新版本的 Ruby,您现在还可以:

      <%= f.text_field :last_name, class: 'form-control' %>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-10-27
        • 2012-06-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多