2013-07-02 3 views
1

меня эта модельпроверка не работает должным образом

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

, вы просто не показываете свои ошибки в своем представлении. @ dishtemplate.errors.full_messages.each do ... – kwyoung11

ответ

0

так я решил эту проблему, добавив этот код «создать»

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 
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 %> 

из формы частичной. Поместите его обратно.