Bonjour,
J’ai un modèle représentant des lignes de stock avec une ressource
associé à une quantité. On peut modifier la quantité en stock uniquement
par différence (on agit pas sur la quantité mais en ajoutant ou
soustrayant).
Et j’aurais voulu savoir si lorsque la quantité tombe à 0 et qu’on
sauvegarde le record il n’y aurais pas moyen de le détruire plutôt que
de sauvegarder une ligne de stock avec une quantité nulle.
Merci d’avance.
Titinux
bonjour,
si tu as une base mysql tu peux faire un trigger je pense pour gérer ça.
Le 8 décembre 2009 16:29, Jérémie Horhant [email protected]
a
écrit :
Jérémie Horhant a écrit :
Merci d’avance.
Titinux
after_save :delete_me_if_empty
def delete_me_if_empty
if self.quantity <= 0
self.destroy
end
end
–
Cyril M.
Merci beaucoup de ta réponse, j’aurais juste deux objections à faire sur
cette solution :
1 - Est-ce bien raisonnable de modifier la base de donnée dans “le dos”
d’active record ? Je suis presque sur qu’on peut arriver à des
situations assez étranges.
2 - Ça casse complètement l’agnosticisme d’active record concernant les
bases de données.
Donc en gros je préférerais faire autrement.