J'ai besoin d'envoyer une alerte email quand le prix d'un produit change. Est-il possible de faire cela avec ActiveRecord::Observer
ou ai-je besoin d'utiliser la logique de programmation dans le formulaire d'édition?Est-il possible de savoir exactement ce qui a changé en utilisant un observateur en ruby sur rails?
3
A
Répondre
5
Vous pouvez utiliser Dirty Objects pour y parvenir, dans ce cas précis, vous aurez quelque chose comme ceci dans votre observateur.
FooMailer.deliver_alert(foo) if foo.price_changed?
Selon: « Une fois que vous enregistrez un objet sale, il efface son suivi de l'état changé et est à nouveau considéré comme inchangé » Vous devriez demander la prince_changed?
avant l'opération save
est fait.
Espérons que ça vous aide.
Questions connexes
- 1. Ce qui a changé exactement lorsque QStandardItemModel itemChanged est signalé
- 2. ce qui est délégué exactement en C#
- 3. Comment déterminer ce qui a changé DependencyProperty
- 4. Ruby on Rails personnalisé Observateur
- 5. Déterminer quels fichiers git ont changé en utilisant Ruby?
- 6. wpf savoir quand le modèle a changé
- 7. Ce qui a changé depuis « Le langage de programmation C »
- 8. Installation de Ruby sur Mac 1.9.2, en obtenant toujours 1.8.7 même si le chemin a changé
- 9. En utilisant MVVM, comment savoir si une ComboBox a changé la valeur sélectionnée?
- 10. Comment savoir ce qui a été cliqué?
- 11. page a changé en JQUERY
- 12. Comment puis-je savoir si un "assemblage" a vraiment changé?
- 13. Galerie Ruby on Rails en utilisant un trombone
- 14. comment faire ce qui suit en ruby?
- 15. Rails 3 Observer - qui cherchent à apprendre à mettre en œuvre un observateur pour plusieurs modèles
- 16. ce qui est exactement coulée dynamique en C++
- 17. Comment créer un bouton qui entre une chaîne dans un formulaire en utilisant Ruby on Rails?
- 18. Est-ce possible en utilisant ant?
- 19. Comment puis-je savoir qui a créé un fichier sous Windows en utilisant .NET?
- 20. Rails 3 Observer - qui cherchent à apprendre à mettre en œuvre un observateur pour plusieurs modèles
- 21. Énumération en Ruby sur les rails
- 22. Comment détecter le système de fichiers a changé en Java
- 23. VoIP sur 3G sur iPhone, qu'est-ce qui a changé dans le SDK?
- 24. Comment savoir si le site Web en cours de modification a changé?
- 25. Ajout d'heures en ruby sur les rails
- 26. En utilisant PHP Curl, comment puis-je regarder exactement ce qui est envoyé?
- 27. Récupère les valeurs de .dll en utilisant Ruby on rails?
- 28. pocos auto-suivi, comment savoir si une propriété a changé?
- 29. Le texte a changé en Javascript
- 30. Plusieurs relations un à plusieurs en utilisant les mêmes 2 tables en ruby sur rails?
Mon mystère en grammaire. Je veux envoyer l'alerte quand le prix change, pas "seulement" le prix. Ce que j'ai essayé de signifier, c'est que je ne veux pas d'alerte lorsque d'autres attributs changent. Pardon. J'ai édité ma question. Pouvez-vous mettre à jour votre réponse? –
Mis à jour, maintenant Il utilise une méthode dynamique (truc cool) :). – jpemberthy