ne peut pas dup nilclass - erreur
-
17-09-2020 - |
Question
Je suis bloqué dans cette erreur pendant assez de temps en temps et j'ai frappé une impasse.
Je reçois cette erreur totalement inutile
can't dup NilClass
C'est la situation.
J'ai une classe qui est dans une relation avec une autre.Dire
class Parent
end
class Child < Parent
unloadable
:has_many :parents, :foreign_key => "child"
end
L'erreur ne se produit pas la première fois qu'elle est accessible.Il se produit la deuxième fois que l'enfant est accessible.
Qu'est-ce qui cause exactement cette erreur et existe une solution?
J'ai référé le Lien suivant maisça n'aide pas
mise à jour
J'ai trouvé Ce
Mais cela suggère la même chose.Mais j'ai un module dans ma lib.Cela n'a rien à voir avec le modèle cependant.
La solution
Pourquoi marquez-vous l'enfant comme non chargé?Y a-t-il une bonne raison pour cela?Sinon, je supprimerais.
RAILS API dit "Les constantes non chargées sont supprimées chaque fois que les dépendances sont effacées.. "
L'erreur se produit-elle lorsque vous le modifiez:
class Child < Parent
has_many :parents, :foreign_key => "child"
end
Et, je suis peut-être dépassé, mais cela semble plus standard:
class Child
belongs_to :parent
end
class Parent
has_many :children, :dependent=>:destroy
end
Autres conseils
Ceci est une erreur de l'infrastructure souterraine.Il peut causer une erreur de grammaire très basique ou par conséquence.
Je vous suggère donc de vous assurer que tous les fichiers de configuration sont présents (en particulier le dossier de configuration, ces fichiers YAML)
Dans mon cas, j'ai résolu ce problème en ajoutant la configuration / application.yml (qui est un fichier de configuration)