/ / Ako môžem dynamicky zmeniť môj formát vykresľovacieho motora v koľajniciach? - rubín na koľajniciach, haml, erb

Ako môžem dynamicky zmeniť môj formát vykresľovacieho motora v koľajniciach? - rubín na koľajniciach, haml, erb

Môj predvolený templátový motor je haml, ale niekedy by som ho zmenil na erb, ak by som špecifikoval konkrétny parameter?

Napríklad vložím nejaký html kód a chcel by som testovať kód bez toho, aby si HAML sťažoval na svoj formát.

Máte nejakú predstavu, ako to urobiť?

odpovede:

3 pre odpoveď č. 1

urobte niečo ako:

if params[:render_erb]
render "file.html.erb"
else
render "file.html.haml"
end

a zavolajte akciu s? render_erb = true

alebo

render "file.html.#{params[:render]}" ir params[:render]

a vyvolať to? render = haml alebo? render = erb (alebo nič a bude používať predvolené

na konci operácie regulátora, ktorú používate


0 pre odpoveď č. 2

Mám zlé, že stačí uložiť súbor ako your_file.html.erb namiesto your_file.html.haml?


0 pre odpoveď č. 3

V rovnakej aplikácii môžete použiť rôzne šablóny a pre zobrazenia môžete použiť rôzne motory so šablónami, partials, a rozvrhnutie, ale pokiaľ viem, nemôžete sa dostať do a z viacerých šablónových motorov v rámci toho istého súboru šablón.

Ak chcete len niektorý kód použiť iným jazykom šablóny, potom by som ho dal v samostatnej časti. To sa v tomto konkrétnom prípade zdá byť najjednoduchšie.