Redondance dans les controleurs et les vues

Bonjour,

C’est mon premier message ici, donc merci d’avance de la lecture de mon
message :wink:

Dans le cadre d’un projet pour mon école, je me suis mis à Ruby on
Rails. Je trouve ce Framework vraiment super, mais j’ai encore quelques
problèmes au niveau du modèle MVC.

D’après ce que j’ai lu, ce modèle à été créé pour avoir le moins de
redondance possible. Mais dans l’application Web que je crée
actuellement, il me semble que j’ai beaucoup de redondance. C’est
sûrement que je me suis mal pris à la base lors de la création des
fichiers avec le scaffold… Mais j’ai de la peine à voir comment faire
d’autre, d’où mon message.

voilà l’arborescence “allégée” du dossier “app”:

controllers
|- admin // qui contient les contrôleurs fait automatiquement par le scaffold pour tous les modèles
|- utilisateur // qui, comme admin, contient les contrôleurs fait automatiquement par le scaffold MAIS uniquement sur certain modèles qui sont presque les même que pour l’admin (par exemple, juste plus possible de modifier ou supprimer… mais le reste c’est la même chose…).

models
|- […] // un modèle par table

views
|- admin // qui contient tous les dossiers qui contiennent toutes les vues généré par le scaffold
|- utilisateur // qui contient, comme admin, tous les dossiers qui contiennent tous les vues généré par le scaffold dont la plus par sont les même que pour l’admin (par exemple, le listage).

Avec ce système, lorsque que j’affiche par exemple une liste dans la vue
administrateur ou que j’affiche la vue de utilisateur c’est la même
chose, mais j’ai aussi 2 fois le code… Ce qui n’est il me semble
vraiment pas bien! Mais j’ai vraiment de la peine à voir comment faire
autrement…

Je me demande donc si je ne devrai pas plutôt faire un contrôleur pour
admin et un pour utilisateur. Mais est-ce “vivable” si j’ai beaucoup de
table (donc de modèles) ?

Noé

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs