Avec un has_many
régulier, il y a l'option de :dependent => :destroy
pour supprimer les associations lorsque l'enregistrement parent est supprimé. Avec has_many :through
, il peut y avoir d'autres parents associés aux enregistrements enfant, donc :dependent => :destroy
n'a aucun effet.Détruire les associations après la dernière has_many: à travers l'enregistrement est supprimé
Comment vous assurez-vous que les enregistrements enfants sont supprimés après qu'ils sont devenus orphelins de la dernière association HMT?
Poke dans une vieille question/réponse, j'avais 'has_many: through' assocation; J'ai appelé 'destroy' sur le modèle Through, mais je voulais supprimer tout modèle de l'autre côté de l'association qui pourrait être orphelin. J'ai placé ce code à l'intérieur de mon modèle à travers, et puisque le modèle à la fin étant détruit était seulement un 'belongs_to', j'ai enlevé l'appel de' each' d'emballage. Merci pour la poussée dans la bonne direction. –