J'ai un initialisateur qui définit une valeur par défaut qui est utilisée dans toute l'application. La valeur est un modèle ActiveRecord, je cache l'essentiel pour la durée de vie de l'application:Dépendance sur les données de l'appareil dans l'initialiseur de rails
@@default_region = Region.find_by_uri("whistler")
L'enregistrement est garanti dans la base de données: il est des données de fixation qui est référencé par d'autres modèles. Cela fonctionne correctement, sauf dans l'environnement de test où la base de données est purgée avant chaque exécution de test. (Je cours sur des rails de bord et je pense que c'est un comportement récent: je pouvais insérer les données manuellement et les conserver entre les tests.) J'ai aussi l'enregistrement dans mon fichier de luminaire regions.yml
, mais les appareils ne sont pas chargés jusqu'à ce que l'initialisation des rails soit terminée.
Quelle est la bonne façon de faire face à une telle dépendance sur les données d'appareils? Ou y a-t-il une meilleure façon de structurer cela? Je préfèrerais ne pas utiliser un before_filter car il n'y a aucun sens à recharger ceci à chaque requête: ça ne changera pas sauf sur un déploiement différent.
Très bonne solution ... se débarrasse de toute la dépendance. Tout se déplace vers le modèle par la suite! –