2013-07-05 133 views
-2

不显示simple_form错误通知我使用Zurb基金会和简单的形式使用zurb基础

<%= simple_form_for @complaint do |f| %> 
    <%= f.error_notification %> 

    <%= f.association :company, as: :radio, label: false %> 
    <%= f.input :country, priority: ["United States"] %> 
    <%= f.input :city %> 
    <%= f.input :client, placeholder: 'Coca-Cola' %> 
    <%= f.input :body %> 

    <%= f.button :submit %> 
<% end %> 

在我的模型:

class Complaint < ActiveRecord::Base 
    belongs_to :company 
    attr_accessible :body, :city, :client, :country, :company_id 
    validates :company, presence: { message: 'Company cannot be blank!' } 
    validates :body, presence: true 
    validates :country, presence: true 
    validates :city, presence: true 
end 

当我点击提交一个空的形式,我希望有错误的说'公司不能空白!'等等

我是不是用<%= f.error_notification %>不正确? 我怎样才能到那里显示错误?

回答

0

不要把它当作逐字,因为我只有几个月进入rails自己,但我不认为error_notification是用来显示错误的: - 错误本身打算显示在组件旁边。不过,我有一个情况使用f.input_field的f.error场中的元件旁边是凌乱的,所以我想我在页面顶部的所有错误,所以我创建了一个简单的部分:

-if object.errors.any? 
    .alert{:class => "alert-error"} 
    %p= "Please correct the following #{pluralize(object.errors.count, 'error')}:" 
    %ul 
     - object.errors.full_messages.each do |msg| 
     %li= msg 

,并呈现在它页面顶部:

= render "layouts/errors", :object => @booking 

对不起,哈姆。

.alert{:class => "alert-error"} 

样式它与通知相同。

0

请问您可以显示您的控制器CREATE操作代码。我有类似的错误,问题在那里。

您可能已经使用@ complaint.save!而不仅仅是@ complaint.save

你应该调用保存而不是保存!所以if语句可能会失败,对象将在其错误对象中包含消息,并且simple_form可以在render:new之后将它们呈现在每个表单输入旁边。

+0

对不起,我不再工作在该回购,并没有控制器代码。 – emailnitram