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