2010-05-18 8 views
0

Dans Rails, est-ce correct de définir la logique dans un contrôleur avec un modèle. Par exemple, prenons il y a un modèle d'utilisateur, ce qui est un bon design.Rails Controller

1) En quittant l'userModel avec les modèles CRUD et déplacer tous les autres utilisateurs des actions spécifiques à un contrôleur séparé ou
2) Ajouter l'utilisateur des actions spécifiques aux mêmes UserModels

Merci :)

Répondre

2

Je préférerais approche suivante

création d'un modèle utilisateur distinct dans un espace de nom différent professionnel (pour représenter connexion entreprise) et il aura toute la logique métier et il y aura un modèle d'utilisateur distinct qui découle de ActiveRecord

exemple serait

classe affaires :: user

#inside tout cela la logique métier de l'utilisateur va

#Vous pourrait avoir besoin utilisateur modèle (ORM) lorsque cela est nécessaire comme l'action de trouver

fin

et mon contrôleur communiquera avec Business :: L'utilisateur et cette classe communiquera avec la classe utilisateur (ORM) pour les actions de base de données

classe utilisateur < ActiveRecord :: base

fin

de cette manière, vous pouvez séparer votre login d'affaires et ORM. De toute façon, vous devriez garder vos contrôleurs mince tout en donnant plus de traitement à vos modèles

acclamations, Sameera

3

Modèles gros, contrôleurs minces. Si c'est quelque chose qui est fait entièrement en fonction des attributs du modèle, ou des attributs du modèle plus quelques arguments, il va dans le modèle. Si c'est quelque chose de plus complexe, il va probablement encore dans un modèle, mais pas dans celui qui est dérivé de ActiveRecord :: Base.

Questions connexes