Suppression d'un enregistrement de base de données
En Ruby on Rails, est-il @variable.delete
ou @variable.destroy
Ce n'est pas vraiment un Rubis question, c'est une question pour quelle que soit la PLATEFORME que vous utilisez, qui, depuis que vous êtes à l'aide de Rails, est probablement ActiveRecord. Comment au sujet de reformuler votre question et le titre pour refléter l'ORM au lieu de Ruby. Comme il est, c'est une source de confusion question.
oui, vous avez raison, Mauvais changement
oui, vous avez raison, Mauvais changement
OriginalL'auteur Justin Meltzer | 2011-03-19
Vous devez vous connecter pour publier un commentaire.
@variable.destroy
appelle tous les rappels (before_destroy etc.) ainsi que d'assurer que les associations sont respectés.@variable.delete
appelle simplement la crue de la base de données de requête pour supprimer l'objet. Vous êtes généralement beaucoup plus sûr hors tension à l'aidedestroy
même si c'est plus cher.OriginalL'auteur lebreeze
En supposant que vous êtes à l'aide de ActiveRecord, et que
@variable
est une instance d'uneActiveRecord::Base
sous-classe, vous appelez@variable.destroy
.OriginalL'auteur Adam Lassek