2012-09-25 21 views
5

inat.jQuery datepicker + Raylar 3.2.8 + angularjs: gösterisi ve ben birlikte üçlü raylar + angularjs + jQuery datepicker iş yapma bir zorlanıyorum tarih sorunu

ilk sayısı arka uç alındığı şekliyle tarihini gösteren beraberdir. Kullanıcı arabirimi arka uçtan veri istediğinde, bir noktada, aşağıdaki öğelerini JSON notasyonunda alır.

{"id":1,"ragione_sociale":"FrigoCaserta srl","indirizzo":"Strada provinciale Gricignano d'Aversa","cap":"81030","citta":"Gricignano d'Aversa","provincia":"CE","partita_iva":"1234","codice_fiscale":null,"tipo_contratto":"Orario","costo":"0.0","inizio":"2012-05-01","fine":"2013-09-22","$$hashKey":"005"} 

İlgili alanlar "inizio" ve "fine" (sırasıyla başlangıç ​​ve bitiş tarihleridir).

Raylar saat dilimi Avrupa/Roma olarak ayarlanmıştır. Yerine, 01.05.2012 ama:

Böylece giriş alanı olarak "inizio" tarihini göstermek için beklenen: { 'gg/aa/yy' DATEFORMAT:}

DatePicker en seçenekleri ayarlanır Geri döndüm: 24/03/2018. 'Yy-mm-dd' olarak DATEFORMAT seçeneğini değiştirme

olsa perde arkasında ne olur

, ... ama istenmeyen ayırıcı ve biçimi (2012-05-01) ile doğru tarihi gösterir görüntülenen bir nesne bir şekilde manipüle edilen ve bu gibi olur alır olduğu:

"inizio" alanı artık "2012-05-01" için ": 00 00.000Z 2012-04-30T22" dönüştürülmüş olan

{"id":1,"ragione_sociale":"FrigoCaserta srl","indirizzo":"Strada provinciale Gricignano d'Aversa","cap":"81030","citta":"Gricignano d'Aversa","provincia":"CE","partita_iva":"1234","codice_fiscale":null,"tipo_contratto":"Orario","costo":"0.0","inizio":"2012-04-30T22:00:00.000Z", ... 

Not

Şimdi formu her seferinde arkaya gönderdiğimde g, raptiyeler tarihçeri tarafından biçimlendirilmiş olarak "inizio" için yeni değer aldığından, göbek yukarı gider. Sadece bir Tarih olmak üzere veritabanı alanı zamanla ilgili bilgileri ortadan kaldırır ve geriye kalan sadece modele (yanlış) tarihin kalmasına neden olur.

Tarih seçicinin yerelleştirme seçenekleri bulunduğunu biliyorum, ancak bu istenmeyen davranışı gidermek için değiştirebileceğim herhangi bir zaman dilimi bulamıyorum.

ben UI gelen bilgiyi ayrıştırma backend'in modeline özelliklerini kullanabilirsiniz düşündüm, ama bu yaklaşımı sevmiyorum.

Tüm bunlarla uğraşırken izlenmesi gereken en iyi uygulama nedir?

Şans olmadan StackOverflow benzer soruları geçtiniz.

Yardımlarınız için şimdiden teşekkür ederiz.

+0

mücadele birkaç saat sonra nihayet gizlememiz çözüldü. Tabii ki benim bir hataydı, "Görünüşe göre yönerge, standart javascript Date nesnesi olmak için model değerini bekler ve bekler." Tarih alanlarını dizgiler olarak geçiyordum. – CarmineM74

+0

Peki, alanların tarih olup olmadığından emin olmak için ne yaptın? – igreulich

+0

Angularjs hizmetimde arka uçtan başarılı yanıtı yakaladım ve dize temsillerini Tarih örnekleriyle değiştirdim. – CarmineM74

cevap