Salve ragazzi,
sono stato costretto, dal mio webhosting, all’aggiornamento delle
applicazioni da Rails2 a Rails3 e ho avuto qualche problemino sui dati e
sul routing.
In particolare nel db ho sempre salvato nei campi di testo, il testo con
i tag html e cioé Software.
Nella nuova versione di rails nel print del testo i caratteri speciali
vengono convertiti e quindi ho dovuto usare il comando raw(item.text).
domande:
- è il modo corretto di procedere?
2)è possibile dire all’applicazione di usare il raw di default (non
riesco a capirne l’utilità, me la spiegate)?
- per i caratteri speciali come anche le lettere greche ho sempre usato
il tag html corripondente, forse dovrei procedere diversamente, mi date
qualche suggerimento?
Grazie mille dell’aiuto
Luigi
Ti rispondo in linea e ti faccio una domanda: perch mantiene il codice
HTML nel DB? necessario?
Alessandro R.
Il 24/nov/2013 12:24 “Luigi M.” [email protected] ha scritto:
domande:
- il modo corretto di procedere?
Si
- possibile dire all’applicazione di usare il raw di default (non
riesco a capirne l’utilit, me la spiegate)?
Non so ma non il modo corretto di procedere. Rails3 fa l’escape
automatico dell’html per evitare code injection nelle tue pagine. Se sei
sicuro che il valore che hai nel DB ‘sicuro’ usa raw come stai facendo
- per i caratteri speciali come anche le lettere greche ho sempre usato
il tag html corripondente, forse dovrei procedere diversamente, mi date
qualche suggerimento?
Va bene. Se utilizzi utf8 io non ho problemi a mettere direttamente la
lettera senza escape.
Grazie mille dell’aiuto
Di niente
Grazie infinite delle risposte.
alla tua domanda:
perché mantiene il codice HTML nel DB? necessario?
ti rispondo: sinceramente non saprei.
Nel senso che ho sempre proceduto in questo modo perché ho sempre
evitato di usare WYSIWYG quando ho cominciato nel 2007.
Come dovrei meglio procedere?
Grazie
Luigi
alla tua domanda:
perché mantiene il codice HTML nel DB? necessario?
ti rispondo: sinceramente non saprei.
Nel senso che ho sempre proceduto in questo modo perché ho sempre
evitato di usare WYSIWYG quando ho cominciato nel 2007.
Come dovrei meglio procedere?
Inoltre nel codice uso spesso dei print di specifiche classi di stile
“if” una condizione specifica si avvera e quindi ho:
<%=‘class=“pagina-corrente”’ if @page==nil-%>
ora devo scrivere:
<%=raw(’ class=“pagina-corrente” ') if @page==nil-%>
però non mi sembra molto pulito il codice.
Esiste un modo migliore?
Grazie
Luigi