Forum: Rails France [vue][erb] invoquer un template ERB depuis une vue Rails

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Nicolas D. (Guest)
on 2007-05-27 09:41
(Received via mailing list)
Salut,
j'aimerais pouvoir, dans une ou deux vues de mon applications Rails,
rajouter du HTML généré à partir d'un template mémorisé dans ma base
de données. Comment puis-je faire ?
--
Nicolas D.
N'imprimez ce mail que si vous ne savez pas le lire sur l'écran : les
électrons se recyclent bien, le papier, beaucoup moins bien.
Cyril M. (Guest)
on 2007-05-27 13:04
(Received via mailing list)
On 5/27/07, Nicolas D. <removed_email_address@domain.invalid> wrote:
>
> Salut,
> j'aimerais pouvoir, dans une ou deux vues de mon applications Rails,
> rajouter du HTML généré à partir d'un template mémorisé dans ma base
> de données. Comment puis-je faire ?

Tu peux utiliser la méthode render_to_string[1], si tu veux que ca
soit généré dans ton controleur et transféré dans une string. Par
contre en regardant le code de la méthode, j'ai l'impression qu'elle
pourrait passé en deprecated
bientôt.
Par contre une autre technique toute simple et d'utiliser le helper
render directement dans ta vue.

<%= render :file => 'entries/view.rhtml' %>

Le path de base est bien sur "#{RAILS_ROOT}/app/views"

[1] :
http://api.rubyonrails.org/classes/ActionControlle...

--
Cyril M.
Jean-François (Guest)
on 2007-05-27 14:08
(Received via mailing list)
Nicolas :
> j'aimerais pouvoir, dans une ou deux vues de mon applications Rails,
> rajouter du HTML généré à partir d'un template mémorisé dans ma base
> de données. Comment puis-je faire ?

Dans ton action :

erb_string = MonModele.find(...)
@result = render_to_string(:inline => erb_string)

     -- Jean-François.

--
À la renverse.
Nicolas D. (Guest)
on 2007-05-27 16:51
(Received via mailing list)
On 5/27/07, Jean-François <removed_email_address@domain.invalid> wrote:
>
> erb_string = MonModele.find(...)
> @result = render_to_string(:inline => erb_string)

Merci pour l'info.
J'ai trouvé en fait juste après avoir posé la question. Il suffit
effectivement dans ma vue de faire un render :inline => "mon texte"
>
>      -- Jean-François.
>
> --
> À la renverse.
>
> >
>


--
Nicolas D.
N'imprimez ce mail que si vous ne savez pas le lire sur l'écran : les
électrons se recyclent bien, le papier, beaucoup moins bien.
This topic is locked and can not be replied to.