Я хочу подтвердить отправленную форму.Имя отправляемого параметра - рейтинг.И этот параметр сохраняется в столбце rating_score.
Я хочу проверить, что оценки параметров находятся только между 1 и 5.
Я поместил это в мою модель: validates_inclusion_of: rating_score,:in => 1..5
После этого я отправил свою форму с оценкой параметров = 6, и она была сохранена в моей базе данных.
Мой контроллер:
def rate
@konkurrancer = Konkurrancer.find(params[:id])
@konkurrancer.rating_score ||= 0
@container = "Konkurrancer"+@konkurrancer.id.to_s
@konkurrancer.rating_score += params[:vind][:ratings].to_i
@konkurrancer.ratings += 1
@konkurrancer.save
respond_to do |format|
format.js
end
end
Моя модель:
class Konkurrancer < ActiveRecord::Base
attr_accessible :rating_score
validates_inclusion_of :rating_score, :in => 1..5
end
Мой журнал при отправке моей формы:
Started POST "/konkurrancers/rate/7" for 127.0.0.1 at 2011-05-03 23:23:53 +0200
Processing by KonkurrancersController#rate as */*
Parameters: {"utf8"=>"Ô£ô", "authenticity_token"=>"h6RSZbuVVfYIvdNb31xS6Oo7Q8o
1JxvVL24aoJ2GQ/o=", "vind"=>{"ratings"=>"6"}, "id"=>"7"}
Completed 200 OK in 488ms (Views: 239.0ms | ActiveRecord: 20.0ms)
Как сделать проверку?