Hello,

2012/5/31 HappyNoff <[email protected]>

> Hello,
>
> Oui justement c'est ma gem ^^ et je veux l'améliorer.
>
> En fait ce n'est pas rare du tout ce dont je parle et parfaitement
> prévisible.
>
> Lorsque l'on fait link_to 'texte', @article c'est la même chose.
> De la même façon, le redirect_to @article utilise le même principe.
> Ça utilise url_for pour générer l'url en utilisant l'url nommée
> article_path et en lui passant @article ce qui donne article_path(@article).
>
> Le souci est justement que url_for tente d'appeler article_path qui n'est
> pas définie dans le contexte d'ariane.
>
> Je viens de trouver une solution qui fonctionne mais qui, à mon sens, est
> complètement dégueulasse ^^
>
> class Base # La classe qui va générer la liste de liens
>   #...
>
>   def method_missing(meth, *args, &block)
>     if meth =~ /(_path|_url)\Z/
>       Rails.application.routes.url_helpers.send(meth, *args, &block)
>

Pourquoi tu n'inclus pas tout simplement ce module ?

class Base
  include  Rails.application.routes.url_helpers
end

et voilà, tu as tes routes helpers, donc les truc_path et truc_url ( te
faudra def le :host ) :)


>     else
>       super
>     end
> end
>
> Dans un sens, c'est plutôt logique mais à tester déjà c'est un peu la mort
> et puis je trouve qu'il y a un petit côté sale dedans.
> Enfin après c'est peut être que moi ^^
>
> Simon COURTOIS
>
>
> On Thursday, May 31, 2012 9:11:36 PM UTC+2, Olivier El Mekki wrote:
>
>> Hello,
>>
>> >    C'est cool mais j'aimerais pousser ᅵa un peu plus loin et
>> permettre de
>> >    faire ceci:
>> >
>> >    <% ariane.add un_model.title, un_model %>
>>
>> ᅵa devrait faire quoi ? La lib ne peut pas dᅵterminer d'elle-mᅵme
>> si tu
>> veux aller vers une action d'index, de show, voir mᅵme une action
>> custom.
>>
>> La possibilitᅵ de faire `form_for @resource` est un cas rare : si on
>> veut un form, c'est qu'on veut modifier un objet. C'est donc soit un
>> create, soit un update, qu'on dᅵtermine en regardant si l'objet est un
>> new_record? ou non.
>>
>> Ici, ce n'est pas devinable de la mᅵme maniᅵre - ᅵa peut ᅵtre
>> n'importe
>> quelle url.
>>
>> Mais je vois que Simon est l'auteur de cette gem, donc je le laisse te
>> rᅵpondre au cas oᅵ :)
>>
>>
>> --
>> Olivier El Mekki.
>>
>  --
> 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]
>



-- 
Jean-Hadrien Chabran

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