Le 04/11/2011 19:31, Michel Belleville a écrit :
> Accessoirement, si ça c'est ta méthode create, quelques questions :
> 
>     def create
>     @item = Item.new(params[:item])
>     @item = Item.create(params[:item])
> 
>     @search = Item.search(params[:search])
>     if @search
>     @items = @search
>     else
>     @items = Item.order("title")
>     end
>     end
> 
> 
> Déjà sur ces deux lignes :
> 
>     @item = Item.new(params[:item]) 
> 
>     @item = Item.create(params[:item])
> 
> A quoi ça sert de faire une nouvelle instance d'item dans la propriété
> @item sans la sauvegarder en base (première ligne) juste avant de mettre
> une autre nouvelle instance d'Item en tentant de la sauvegarder d'abord
> en base de données cette fois (2° ligne) dans la même propriété @item à
> la place de la première ?
> 
> Ensuite, à quoi sert la ligne suivante :
> 
>     @search = Item.search(params[:search])
> 
> Normalement ton action create devrait tenter de créer un nouvel item,
> chercher des items ce serait plutôt le boulot de la méthode index par
> exemple. Je suppose que tu as fait ça pour remplir ensuite la propriété
> @items dans les lignes suivantes et parce que tu as fait une vue create
> qui doit afficher la liste d'items que tu récupères.
> 
> Tout ça n'est pas terrible, et un peu inutilement compliqué.

J'ajouterais en plus que c'est tout simplement dangereux : un
utilisateur sur une page listant des items ne s'attend pas à ce qu'un
simple rafraîchissement en crée un nouveau...

Lionel

-- 
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 à