验证表单中rails中的多个字段

时间:2015-01-20 06:00:16

标签: javascript ruby-on-rails forms

我在我的应用程序中有这个表单,我想验证表单中的几个字段。即我希望在表单提交期间将它们作为必填字段。

有没有什么方法可以让我不必使用任何宝石或任何直接用于此特定任务的好宝石?

<div class="col-md-4">
  <div class="form-group">
    <div class="field">
      <%= f.label :name %><br />
      <%= f.text_field :name, :class=>"form-control", :placeholder=>"Enter Your Name" %>
    </div>
    <div class="field">
      <%= f.label :email %><br />
      <%= f.text_field :email, :class=>"form-control", :placeholder=>"Enter Your Password"%>
      </div>
    <div class="field">
      <%= f.label :phone %><br />
      <%= f.text_field :phone, :class=>"form-control", :placeholder=>"Enter Your Phone Number"%>
      </div>
   </div> 
</div>

<div class = "col-md-8">
   <div class="form-group">
     <div class="field">
      <%= f.label :description %><br />
      <%= f.text_area :description,  :class=>"form-control", :size=>"20x5", :placeholder=>"Enter Your Message"%>
     </div>
   </div>
</div>

<div class="actions">
  <%= f.submit "Submit", :class=> "button1"%>
</div> 

提前致谢

1 个答案:

答案 0 :(得分:0)

我们可以使用各种插件进行客户端验证。 您可以为此选择jquery_validate。 请参阅:http://jqueryvalidation.org/

但客户端验证并不总是可靠的。如果您禁用浏览器javascript,验证将不再有效。

但是从用户体验的角度来看,请考虑实施客户端验证。但从应用程序安全的角度来看,您应该考虑进行服务器端验证。

  validates :name, 
    presence: { message: "Organization name is mandatory." }

  validates :address, presence: {message: 'Address is mandatory.'}

  validates :description, presence: { message: 'Description is mandatory'}
  validates_length_of :name, 
    maximum: 50, too_long: "Maximum 50 characters allowed."

  validates_length_of :address, :description, 
    maximum: 300, too_long: "Maximum 300 characters allowed."

希望它可以帮助你:)