Rails表单验证不显示错误消息,取空白字段

时间:2014-03-26 07:29:31

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

My form::

<h1>New Post</h1>

<%= form_for (@post), url: posts_path do |f| %>
  <% if @post.errors.any? %>
  <div id="error_explanation">
    <h2><%= pluralize(@post.errors.count, "error") %> prohibited
      this post from being saved:</h2>
    <ul>
    <% @post.errors.full_messages.each do |msg| %>
      <li><%= msg %></li>
    <% end %>
    </ul>
  </div>
  <% end %>


<p>
<%= f.label :Title%><br>
<%= f.text_field :Title%>
</p>

<p>
<%= f.label :Text%><br>
<%= f.text_area :Text%>
</p>

<p>
    <%= f.submit :Save %>
    </p>

    <% end %>

:: context :: 它没有显示错误消息。请指出我错在哪里。我想添加基本验证。我已经完成了一些教程,但仍然坚持这个..请帮帮我。

2 个答案:

答案 0 :(得分:0)

发布模型中,只需添加以下内容

即可
validates_presence_of :title,text #doesn't allow the blank values

如果您还在寻找标题的唯一值验证,请同时添加此行。

validates_uniqueness_of :title #doesn't allow duplicate values

如果您正在寻找更多验证,请遵循这些指南(Rails 4)。

答案 1 :(得分:0)

validates :title, uniqueness: {message: "must be uniq"}