Domanda

Sto usando jQuery per fare una chiamata ajax al mio controller e tutto funziona perfettamente, tranne che non riesco a ottenere il valore di ritorno che voglio.

Diciamo che ho una collezione di oggetti e ho il parziale:

/app/views/messages/_message.html.erb

Sto cercando di renderlo come una grande stringa di testo / html in questo modo:

format.js { render_to_string :partial => "message", :collection => @messages}

Tuttavia, questo rende una vista di qualche tipo, perché sto ottenendo e tag. Anche se lo cambio in:

format.js { render_to_string :partial => "message", :collection => @messages, :layout => 'none'}

restituisce comunque la stessa cosa. È possibile? Devo restituirlo per jQuery per gestirlo, quindi non sono sicuro che questo possa essere fatto con rjs. Qualsiasi aiuto è apprezzato.

È stato utile?

Soluzione

Hai provato a usare solo render anziché render_to_string?

Inoltre, il fatto che tu stia usando jQuery rende questo leggermente più complicato, se stavi usando il prototipo potresti usare rjs e fare qualcosa del genere

page.replace_html('container_element', :partial => @messages)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top