Je ne dirai qu'une seule chose : Decent Exposure For Everything For The Win 
!

Le vendredi 20 septembre 2013 22:52:22 UTC+2, thierry.henrio a écrit :
>
> Salut!
>
> Je réallume un vieux feu!
> Au passage, merci 
>
>
> 2013/6/12 Nicolas Blanco <[email protected] <javascript:>>
>
>>
>> class SearchesController < ApplicationController
>>   expose(:search) { Search::Doctor.new(params[:search]) }
>>   expose(:search_results) { search.execute.page(params[:page]) }
>>
>>   def show
>>   end
>> end
>>
>
> Effectivement, tu peux
>
> - tester ta search séparément, sans les types 'reques' et tout le 
> bastringue
> - tester le rendering de la vue sous `show` ( show.html.erb par exemple ), 
> en lui passant les variables `search` et `search_results` ( imho, je ne le 
> fais jamais )
>
> Les vilaines ivars @show et @search_results ne gènent plus
> Le state n'est plus requis!
>
> Maintenant, je suis assez perplexe sur 
>
>   def show
>   end
>
> La fonction ne fait rien
> Et si elle n'existe pas, il y a une erreur...
> Il n'y a guère que rails qui fasse ça :)
>
> sinatra demande quelque chose comme 
>
>   def show
>     render :show, locals: { search: search, search_results: search_results 
> }
>   end
>
> ( et je passe les libs/fmk en js, python, ... )
>
> Avec rails, les deux implémentations de show ci-dessus donnent le même 
> résultat
>
> Laquelle vous préférez ?
>
> * un code qui ne fait rien, qui save 1 line, et demande un 'aha' ?
> * un code plus verbeux et peut-être plus clair ?
>
> ?, Thierry
>

-- 
-- 
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]
--- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
Railsfrance.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, 
envoyez un e-mail à l'adresse [email protected].
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .

Répondre à