验证无法正常运行

时间:2013-07-02 17:29:40

标签: ruby-on-rails validation

我有这个模型

class DishTemplate < ActiveRecord::Base
  attr_accessible :day_id, :price, :quantity, :restaurant_id, :name, :description, :photo, :photo_cache
  validates :name, :presence => true

  mount_uploader :photo, DishPhotoUploader
end

验证在控制台中工作正常,但在浏览器中它的工作方式很奇怪。它不保存没有名称的任何模型,但它也没有告诉我有关错误,没有形式的红色边框,没有任何东西,进入列表就像没有问题。什么可能是错的,如何解决?

2 个答案:

答案 0 :(得分:0)

您可能已删除

  <% if @object.errors.any? %>
    <div id="error_explanation">
      <h2><%= pluralize(@object.errors.count, "error") %> prohibited this object from being saved:</h2>

      <ul>
      <% @object.errors.full_messages.each do |msg| %>
        <li><%= msg %></li>
      <% end %>
      </ul>
    </div>
  <% end %>

从形式偏见。把它放回去。

答案 1 :(得分:0)

所以我通过将此代码添加到'create'

来解决了这个问题
respond_to do |format|
  if @dish_template.save
    format.html { redirect_to admin_restaurant_dish_templates_path(@restaurant), notice: 'template was successfully created.' }
    format.json { render json: @dish_template, status: :created, location: @dish_template }
  else
    format.html { render action: "new" }
    format.json { render json: @dish_templates.errors, status: :unprocessable_entity }
  end
end