PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

ActiveRecord::StatementInvalid, PG::UndefinedTable erreur, mais le SQL généré fonctionne

Puisque vous dites que le SQL généré fonctionne lorsque vous l'invoquez directement, la racine du problème se situe quelque part dans le processus de mappage des données renvoyées vers les objets. des indices sur la façon dont les associations vont ensemble.

Pour commencer, vous devez définir une source pour votre through relation (docs) :

has_many :inventories, through: :content_accesses, source: :inventory

Si cela ne donne toujours pas le bon indice aux rails, vous pouvez essayer de définir inverse_of , foreign_key , primary_key et même class_name de l'autre belongs_to et has_many associations, pour donner aux rails les indications nécessaires. Il est difficile de dire ce qui pourrait éventuellement aider, mais dans les configurations non standard, vous rencontrez parfois certains problèmes avec les noms automatiquement déduits.