Включение валидации модели RAILS 3 в не работает - PullRequest
3 голосов
/ 18 февраля 2011
# ==Schema Information
# Schema version:
# Table name: terms
#  id                 :integer         not null, primary key
...
#  user_id            :integer
#  term_type          :string(255)`

term.rb:

  class Term < ActiveRecord::Base 
validates   :term_type,         :inclusion => { :in => %w(Term Segment Entity Abbreviation) }`

Rails 3.0.3, ruby ​​1.8.7, Windows через Cygwin Проверка не работает, то есть она принимает любое значение для term_type. При использовании включения (или validates_inclusion_of, которое приводит к тому же условию сбоя), нужны ли проверки БД, совпадающие с проверками в модели? Есть ли какие-либо проблемы со строками, которые я должен опасаться?

Term_type - это просто строка в БД, а не отдельная таблица.

Любые указатели высоко ценятся.

Винс

1 Ответ

6 голосов
/ 18 февраля 2011

Вы пробовали использовать

validates :field, :inclusion => %{abc ade aeee}
...