Ajax

link_to t(‘Show’), supplier, :remote => true

Voglio poter mostrare i dettagli di un supplier sia tramite una
chiamata ajax sia tramite una chiamata normale a seconda del contesto.
Per ajax ho creato il template show.js.erb:

$(".searchEmployeeResult").html("<%= escape_javascript render ‘show_js’
%>");

nel partial _show_js ho i dati che devono essere visualizzati.
Quello che non mi piace e’ che _show_js e’ del tutto simile al
template show.html.haml.
Non posso chiamare show.html.haml dal template show.js.erb perche’ non
e’ un partial.
Che soluzione posso adottare per evitare di avere questo duplicato?

Ciao Mauro,
tipicamente crei un partial chiamato per esempio _supplier.html.haml in
cui condividi le parti di vista comuni ad entrambi i tipi di richiesta.
Dopodich sia in show.js.erb che in show.html.haml riutilizzi quello
stesso partial. In particolare, in show.js.erb, puoi fare:

$(“.searchEmployeeResult”).html(“<%= escape_javascript render(:partial
=> ‘supplier’, :object => @supplier) %>”);


Stefano V.

http://stefanoverna.com