Ciao a tutti,
Sto impazzendo..... Dovrebbe essere usa sciocchezza ma non riesco a
risolverla e non riesco a comprenderne il perche`:
Ho un form e vorrei farmi restituire un js che modifica un div, nulla di
perverso, ho aggiunto il :remote => true al form ma non va, mi risponde
sempre come html. Ho specificato il datatype js e pur leggendomi il
testo javascript il browser lo interpreta come fosse test. O forzato nel
controller il mime js ( format.js {:js => "azione"} ) ma comunque
testo rimane.
Mi ricordo di aver utilizzato il remote => true nei form in passato e mi
ricordo di non aver avuto problemi. E` il dott. Alzheimer che mi ha
raggiunto anzitempo o qualcosa e` cambiato negli ultimi rails?
Grazie a tutti
Andrea
on 2012-07-02 17:36
on 2012-07-02 17:46
Ciao Andrea potresti dare qualche dettaglio in pi su: versione di rails se stai usando jquery se stai usando il driver ujs incollare un po' di codice lato client e controller
on 2012-07-02 17:51
Ma viene eseguito il codice in format.js {..}?
hai anche l'istruzione format.html?
In ogni caso posta il codice
2012/7/2 Sante Rotondi <saten.r@gmail.com>
on 2012-07-03 11:08
Alessandro R. wrote in post #1067055: > Ma viene eseguito il codice in format.js {..}? > hai anche l'istruzione format.html? > In ogni caso posta il codice > > 2012/7/2 Sante Rotondi <saten.r@gmail.com> Ecco tutte le informazioni: Uso jquery ruby: 1.9.3 rails: 3.2.5 controller: def create @attachment = @email.attachments.new(params[:attachment]) respond_to do |format| if @attachment.save format.js else @notice = "Errore nella creazione" format.js {render :partial => 'purr'} end end end vista (create.js.haml) $('#attachment ul').append('#{escape_javascript(render(:partial => 'attachment'))}'); dimenticavo il form = form_for( [@campaign, @email, @attachment_new], :html => { :multipart => true}, :remote => true ) do |f| = f.file_field :file %span{:class => "fright"} = f.submit
on 2012-07-03 12:41
format.js {
render :update do |page|
page.replace_html "container_id", :partial => 'purr'
end
}
on 2012-07-03 12:45
dove il container_id l'id dell'elemento all'interno del quale deve essere renderizzato il tuo partial.
on 2012-07-03 13:46
Alessandro R. wrote in post #1067162: > format.js { > render :update do |page| > page.replace_html "container_id", :partial => 'purr' > end > } Ciao Alessandro, Per sicurezza ho provato ma non va: con :update vado a generare del codice javascript mentre il mio problema e` che mi esegue il form come se non avessi inserito il :remote => true. Riporto i log per completezza: --------- Started POST "/campaigns/2/emails/3/attachments" for 127.0.0.1 at 2012-07-03 13:33:59 +0200 Processing by AttachmentsController#create as HTML Parameters {parametri} {sql vario} Completed 406 Not Acceptable in 526ms (ActiveRecord: 201.8ms) --------- 406 esce in quanto io non ho creato un format.html quindi non e` accettabile. Se inserisco un format.html con un redirect ovviamente mi funziona tutto correttamente. Temo che il mio errore sia nel form ma non riesco a vedere dove sia :) Andrea detto Willy l'Orbo.
on 2012-07-03 13:53
direi che allora il problema nella form. puoi inviare il codice della pagina che contiene la form? 2012/7/3 Andrea Ranaldi <andrea.ranaldi@gmail.com>
on 2012-07-03 14:21
Ho copiato tutta la pagina ma il form e` nelle righe 18-21 http://pastebin.com/egtBF12z
on 2012-07-03 14:35
esattamente. On Tue, Jul 3, 2012 at 2:31 PM, Marco Mastrodonato <m.mastrodonato@gmail.com
on 2012-07-03 14:49
Cosi` si risolve l'arcano: nel codice generato dal form il data-remote viene inserito correttamente ma viene ignorato il javascript dal browser che non deve accedere ai dischi. Facendo una ricerca con i termini giusti vengono fuori le risposte giuste, ed e` un caso abbastanza comune, solitamente viene risolto con iframe. Grazie a tutti per l'aiuto Andrea
on 2012-07-06 16:25
Se qualcuno fosse interessato ho trovato questa splendida gemma http://os.alfajango.com/remotipart/ cito "The Remotipart gem enables AJAX file-upload capability to remote forms in Rails 3 apps by extending the native jquery-ujs functionality." Nel sistema aggiungi poche righe di js, nella vista aggiungi normalmente il remote true al form, lui si occupa di impacchettare e spedire tramite iframe, per il resto c'e` mastercard :D Andrea
on 2012-07-09 10:34
Ciao Andrea, Non posso che consigliarti https://github.com/gucki/plupload-rails. Probabilmente la migliore del genere :). Matteo
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.