Rails Foxy Fixtures provoquant une erreur de colonne inconnue
-
08-07-2019 - |
Question
J'utilise des installations dynamiques et chaque fois que j'effectue mes tests, une erreur indiquant que mon association est une colonne est générée, alors qu'elle devrait être owner_id
:
ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'owner' in 'field list': INSERT INTO `companies` (`custom_host`, `name`, `created_at`, `updated_at`, `api_key`, `id`, `subdomain`, `owner`) VALUES ('testerapp.com', 'Some Company', '2009-11-29 21:39:29', '2009-11-29 21:39:29', 'ae2b1fca515949e5d54fb22b8ed95575', 467557389, 'some_company', 'garrett')
Dans mon fichier companies.yml
, j'ai ceci:
some_company:
name: Some Company
subdomain: some_company
custom_host: testerapp.com
api_key: <%= "testing".to_md5 %>
owner: garrett
Et utilisateurs.yml
:
garrett:
company: some_company
login: garrett
email: email@me.com
...
locale: en
role_name: owner
Voici également mes modèles:
class Company < ActiveRecord::Base
has_one :owner, :class_name => "User"
has_many :users
validates_associated :owner
end
class User < ActiveRecord::Base
belongs_to :company
end
Mon problème pourrait-il être dû au fait que j'associe Utilisateur
à deux reprises dans Société
? Cela rend les tests très difficiles en ce moment et j'espérais que quelqu'un pourrait expliquer pourquoi il ne lit pas correctement mes associations.
Merci!
La solution
Votre has_one: owner doit être une appartenance à_ owner:
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow