Selezione date con calendar_date_select

Ciao a tutti,

finora ho scritto tutte le mie applicazioni RoR con l’helper standard
date_select per l’input delle date.

Mi stavo accingendo a provare ad utilizzare qualche sistema di selezione
date un po’ più evoluto.

Ne ho provati alcuni ma sto incontrando parecchie difficoltà…

In particolare stavo provando ad adottare calendar_date_select che tutto
sommato mi sembra piuttosto potente e a dirla tutta funziona molto bene
sempre che si utilizzi le impostazioni standard (lingua inglese).

Ho provato ad impostare il formato euro_24hr e il locale it:

app/controllers/application.rb
<%= calendar_date_select_includes :locale => “it”, :format =>
“euro_24hr” %>

inserito il nuovo file
public/javascripts/calendar_date_select/locale/it.sj contenente le
traduzioni:

Date.weekdays = $w(“Lu Ma Me Gi Ve Sa Do”);
Date.months = $w(“Gennaio Febbraio Marzo Aprile Maggio Giugno Luglio
Agosto Settembre Ottobre Novembre Dicembre” );
Date.first_day_of_week = 1
_translations = {
“OK”: “OK”,
“Now”: “Ora”,
“Today”: “Oggi”
}

e ho utilizzato l’helper nella mia form:

<%= f.calendar_date_select :published_from, :embedded => true %>

Il problema è che il controllo mi memorizza il valore in formato
italiano anzichè memorizzarlo in formato inglese e activerecord si
incazza.

Qualcuno sa se è possibile impostare calendar_date_select in modo che
visualizzi lingue diverse dall’inglese ma memorizzi in inglese ?

(la mia applicazione è multilingua con 10 lingue tra cui
cinese/giapponese/russo) vorrei evitare di prelevare il valore scritto
dal controllo e analizzare il nome del mese ritrasformandolo in
inglese…)

Grazie in anticipo…

Gianluca T. wrote:

Il problema � che il controllo mi memorizza il valore in formato
italiano anzich� memorizzarlo in formato inglese e activerecord si
incazza.

Qualcuno sa se � possibile impostare calendar_date_select in modo che
visualizzi lingue diverse dall’inglese ma memorizzi in inglese ?

(la mia applicazione � multilingua con 10 lingue tra cui
cinese/giapponese/russo) vorrei evitare di prelevare il valore scritto
dal controllo e analizzare il nome del mese ritrasformandolo in
inglese…)

Grazie in anticipo…

“hai ciò che vedi” alias se vuoi vedere il valore nel campo input nel
modo giorno/mese/anno nella post ti arriva così, a meno che via
javascript non cambi a manone il valore prima della post.
La cosa migliore che puoi fare è usare la controller/il model per
sistemare il tutto ( ti fai un metodo che vede il local settato e
reimposta la data) oppure usi la data in formato 12 gennaio 2007 a quel
punto puoi passare la data a un oggetto di tipo date e sei a posto.

Alessandro S. ha scritto:

(la mia applicazione � multilingua con 10 lingue tra cui
javascript non cambi a manone il valore prima della post.
La cosa migliore che puoi fare è usare la controller/il model per
sistemare il tutto ( ti fai un metodo che vede il local settato e
reimposta la data) oppure usi la data in formato 12 gennaio 2007 a quel
punto puoi passare la data a un oggetto di tipo date e sei a posto.

Grazie Alessandro per avermi risposto a questa ora, sono qui che sto
indagando tra i sorgenti ma non ne vado fuori…

Non ho capito bene: “oppure usi la data in formato 12 gennaio 2007 a
quel punto puoi passare la data a un oggetto di tipo date e sei a
posto”.

Se imposto la data in quel formato al salvataggio del record mi va in
errore…