Comment savoir si les rails sont exécutés sous un serveur Web, par opposition à un script ou à une IRB? p>
Pour le contexte: Je suive un objet ActiveRecord et je souhaite envoyer des alertes par e-mail si les objets changent,
3 Réponses :
Peut-être que je manque quelque chose d'évident, mais n'est pas le fait que si votre accès de modèle se produit via une interface de contrôleur (c'est-à-dire une action), par définition, un accès via une interface Web? P>
rails ne fonctionne pas sous IRB. Oui, vous pouvez accéder aux objets et à l'état sous la console Je pense que vous devez simplement configurer des filtres de vos contrôleurs pour implémenter votre logique de suivi pour les modèles d'intérêt, puis vous pouvez différencier entre l'accès général et l'accès Web-Server (qui est initié par le contrôleur). P>
sens? p> code> mais ce n'est pas un accès au serveur Web. P>
Hey BJG, merci pour votre réponse. Quand je dis IRB, je veux dire console. Les filtres sont une bonne idée, mais je ne suis pas exactement clair comment cela fonctionnerait. Le contrôleur en question n'est pas très reposant et met à jour plusieurs modèles différents. Comment détecterai-je ceci d'un filtre?
J'ai trouvé quelque chose qui fonctionne, bien que ce ne soit pas très joli
J'ai la tâche de ma candidature à effectuer plusieurs vérifications de démarrage avant de démarrer spécifiquement comme serveur. Dans mon cas particulier, je veux m'assurer qu'un enregistrement spécial J'utilise ce qui suit Hack dans l'une des initialistes responsables des chèques de démarrage: p> utilisateur code> existe dans la base de données depuis que les appels d'API apportés à mon application nécessitent cet utilisateur code>.
Utilisez-vous le mode de production localement? Normalement, vous vous différenciez entre production / développement / test pour ces types de choses.
Habituellement, non, mais parfois, nous utiliserons la console ou le script pour changer de choses dans la base de données de production.