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]