2010-11-12 7 views
2

J'ai une application Rails qui utilise beaucoup de code statistique personnalisé que j'ai écrit, des choses comme le calcul de la moyenne et l'écart-type d'un tableau de nombres, ou le calcul des tests de signification statistique.Rails: où mettre le code de statistiques?

Où puis-je mettre tout ce code? Ce n'est pas lié à un objet de base de données, donc je suppose qu'il ne devrait pas entrer dans/models. Et si je comprends bien,/app/helpers est seulement pour les fonctions d'aide appelées à partir de vos points de vue, donc je ne pense pas qu'il devrait y aller. Suis-je censé mettre mon code de statistiques dans/lib?

En général, je ne suis pas sûr où je suis supposé mettre les bibliothèques d'aide qui sont appelées de mes modèles.

Répondre

4

En aparté, vous pouvez certainement avoir des modèles qui ne sont pas liés aux tables de base de données, mais ils doivent encore être des classes qui représentent des « choses » dans votre domaine, dans mon opinion. Donc, je ne les mettrais toujours pas dans/models, mais pas à cause de quoi que ce soit à faire avec la base de données.

Je les mettrais dans/lib, oui. Notez qu'ils ne seront pas chargés automatiquement par Rails, donc vous devrez ajouter des instructions require dans un initialiseur.

0

/lib sonne bien pour ces étoffes

1

Si ce code n'est utile que pour ce projet, alors/lib est un bon endroit. Cependant, vous pouvez également envisager de l'empaqueter dans un gemme si vous pensez que vous pourriez utiliser le code dans un autre projet plus tard, surtout si vous allez avoir plus d'un projet utilisant ce code en même temps.

0

D'accord, mettre votre code dans un module qui peut être inclus dans vos modèles est la voie à suivre. Cela passe généralement à lib/

Questions connexes