On Dec 16, 2007 5:58 PM, Antoine <[EMAIL PROTECTED]> wrote:
> La plupart de mes actions dans mes controller charge généralement
> avant d'afficher la vue, plusieurs ressources.
> Je fais plusieurs find :
>
> @user=User.find(1)
> @msgs=User.msgs.find(:all)
>
> Par exemple, sur une page j'affiche le profile d'un utlisateur et la
> liste de ses messages.
>
> Comment ce genre action peuvent être écrite en respectant
> l'architecture REST.

Tu fais ton @user = User.find(params[:id]) et après dans ta vue tu
appelles les msgs de ton user @user.msgs, tu peux même le faire dans
ton controleur avec @[EMAIL PROTECTED] je ne vois pas où est le problème
:?
Tu peux toujours mettre ton @msgs dans ton format html pour économiser genre:
[EMAIL PROTECTED]@user.msgs etc} si t'en as besoin uniquement dans la vue html.

> Mais dans mes actions compliquées, je ne peux pas utiliser les actions
> REST car je ne peux pas appeler une action depuis une autre action ?
>

utiliser une action depuis une autre action? Je ne vois pas trop ce
que tu veux dire en général les actions sont utilisées par les vues
c'est tout. Tu peux écrire des fonctions dans tes models à appliquer
durant les actions (avec les filtres after before etc par exemple).

En gros le REST ça permet de bénéficier d'une API prévisible donc dans
ton cas permettre de faire des Get /users/:id et Get /msgs/:id ou Get
/users/:id/msgs (voir le poste de Philippe pour ce cas). Si tu peux
faire ça dans ton appli c'est bon t'es RESTful et dans tes vues t'as
parfaitement le droit de faire appelle à d'autres models pour les
afficher ou même les updater.

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Répondre à