0

J'ai un modèle "emplacement", qui a beaucoup de "cours"Rails 3: Dependent =>: refuser ou similaire?

Si je détruis un emplacement, j'aimerais que la demande de destruction soit rejetée à moins qu'il n'y ait aucune relation entre l'emplacement et les cours. Je suppose qu'il y a une façon assez concise de le faire, mais je ne trouve rien.

Alors ... quelle est la manière la plus élégante/simple/concise d'activer ce genre de fonctionnalité?

Répondre

3

dans ... Location

before_destroy do |l| 
    return false unless l.courses.nil? 
end 
+0

Assez simple, semble un peu comme un hack, mais cela devrait fonctionner parfaitement. Assurez-vous que vous appelez seulement "détruire" sur vos emplacements, pas supprimer (ce qui saute des rappels). – Andrew

+1

Je pense que les cours seront un tableau vide non nul. 'l.courses.empty?' serait mieux. – Mischa

Questions connexes