Je suis dans le processus de refactoring d'un peu de logique intégré dans une application Rails de middleware et d'un ennui que j'ai, est un manque apparent de la convention pour savoir où les mettre.
Actuellement, j'ai installé sur app/middleware
mais je pourrais tout aussi facilement le déplacer vendor/middleware
ou peut - vendor/plugins/middleware
...
Le plus gros problème est d'avoir à demander à la personne de fichiers en haut de l' config/environment.rb
require "app/middleware/system_message"
require "app/middleware/rack_backstage"
sinon je obtenir uninitialized constant des erreurs sur l' config.middleware.use
des lignes. Qui pourrait dégénérer très rapidement. Je préfère cela a été caché loin dans un initialiseur quelque part.
Est-il un classique de la place pour mettre ce genre de choses?
La réponse spécifique, je suis à la recherche de cette prime est: où puis-je mettre l'exigent les lignes de sorte qu'ils ne sont pas encombrer l'environnement.rb fichier mais toujours chargées avant de la config.middleware.utilisation des appels? Tout ce que j'ai essayé conduit à uninitialized constant des erreurs.
Mise à jour: Maintenant que nous sommes à l'aide de Rails 3.0, je traite une application Rails, comme toute autre application Rack; code des fichiers de middleware aller en lib
(ou un bijou énumérés à l' Gemfile
) et sont nécessaires et chargé en config.ru
.