simple-private-messages gem一直说它有错误

时间:2012-06-20 01:07:59

标签: ruby-on-rails devise

当我访问http://example.com/users/1/messages/new时,它说

undefined method `error_message_on' for #<#<Class:0x00000005921d50>:0x0000000591e448>

如果我从视图中删除了包含“error_message_on”的行, 没有出现错误但显示空白页面。太奇怪了:(

消息新视图就是这样的。怎么了? 在此先感谢!!

<% form_for @message, :url => user_messages_path(@user) do |f| %>
  <p>
    To:<br />
        <%= f.text_field :to %>
        <%= error_message_on @message, :to %>
  </p>
  <p>
    Subject:<br />
    <%= f.text_field :subject %>
    <%= error_message_on @message, :subject %>
    </p>
    <p>
      Message<br />
      <%= f.text_area :body %>
            <%= error_message_on @message, :body %>
    </p>
    <p>
      <%= submit_tag "Send" %>
    </p>
<% end %>

1 个答案:

答案 0 :(得分:1)

您需要更改用于form_for声明的erb标记。它应该是<%=而不是<%。这应该修复空白页面。

至于如何显示错误消息,error_message_ondeprecated in Rails 2.3.8。您需要使用您的Rails版本支持的内容。 This question might be of use还有this one