Bonjour,
Sur mon site, des joueurs peuvent créer un jeu. Du coup, je veux
m’assurer que seul le créateur accède à certaines modifications.
Je voudrais (est-ce un bon choix ?) utiliser with_scope. Comme vu dans
un article [1], il faut utiliser with_scope dans le modèle, et non
dans le contrôleur.
J’ai donc une méthode find_mesjeux dans Jeux qui crée un scope sur les
jeux du joueur en question.
def self.find_mesjeux(current_joueur_id,*args)
with_scope :find => { :conditions => [ ‘joueur_id = ?’,
current_joueur_id ] } do
find(*args)
end
end
Ce qui me gêne un peu, c’est que comme on n’a pas accès à
“current_joueur” (c’est créé parle plugin restful_authentication et
çadonne le joueur actuellement connecté) dans le modèle, j’ai passé un
paramètre supplémentaire, current_joueur_id.
Du coup, dans le contrôleur, au lieu de faire un
find_mesjeux(params[:id]), je dois faire
find_mesjeux(current_joueur.id,params[:id]).
C’est pas tip-top, donc si vous pensez qu’on peut mieux s’y prendre,
n’hésitez pas !!!
gUI
[1] with_scope with scope — err.the_blog
–
Pour la santé de votre ordinateur, préférez les logiciels libres.
Lire son mail : http://www.mozilla-europe.org/fr/products/thunderbird/
Browser le web : http://www.mozilla-europe.org/fr/products/firefox/
Suite bureautique : http://fr.openoffice.org/