Rails 3.1, pourquoi je reçois ActiveRecord::UnknownAttributeError: inconnu attribut spec test?
Je suis en train de créer un Student
enregistrement dans un test, comme ceci:
student= Student.create!(:work_phone => "1234567890")
mais j'obtiens cette erreur:
ActiveRecord::UnknownAttributeError: unknown attribute: work_phone
Cependant, work_phone
est définie dans le Student
modèle, et a migré.
Ici est la Student
modèle:
class Student < ActiveRecord::Base
validates_length_of :work_phone, :is => 10, :message => 'must be 10 digits, excluding special characters such as spaces and dashes. No extension or country code allowed.', :if => Proc.new{|o| !o.work_phone.blank?}
attr_accessible:work_phone
end
Une idée?
OriginalL'auteur simo | 2012-01-04
Vous devez vous connecter pour publier un commentaire.
Êtes-vous d'obtenir cette erreur uniquement dans votre environnement de test. Plus précisément, lorsque vous exécutez des tests à l'aide
Ce qui pourrait se passer becase vous n'avez pas d'exécuter les migrations sur vos environnements de test.
Vous pouvez le faire,
ou après avoir exécuter les migrations sur votre développement comme ci-dessous.
Préparation de la base de données de test avec
rake db:test:prepare
fixe pour moi, merci.OriginalL'auteur jake
Seulement l'ajout de attr_accessor:work_phone pour modèle fonctionne également.
OriginalL'auteur Beena Shetty