In sencha touch 2 scheint es, dass es nur string, int, float, boolean Datentypen gibt. Wie speichere ich dann ein Datum?
AKTUALISIEREN
OK, ich habe festgestellt, dass ich convert()
verwenden kann, um Werte zu konvertieren: Ссылка
%Vor%
convert
: Funktion Eine Funktion zum Konvertieren von Rohdatenwerten aus Daten Blockieren Sie die Daten, die im Feld gespeichert werden sollen. Die Funktion ist bestanden die folgenden Parameter:
- v: Gemischt
Der Datenwert wie von der gelesen Reader, wenn undefined wird den konfigurierten defaultValue verwenden.
- rec: Gemischt Das Datenobjekt, das die Zeile enthält, die vom Reader gelesen wurde. Es hängt davon ab der Reader-Typ, könnte dies ein Array (ArrayReader), ein Objekt sein (JsonReader) oder ein XML-Element.
Aber ich verstehe den Code nicht wirklich. Für convert()
, was setzt die Parameter? Warum wird der 1. Parameter unbenutzt und wann und wofür wird er verwendet? Wie bekomme / setze ich solche benutzerdefinierten Typen (wird es v
oder data
in convert()
)?
Ссылка Oh hey ein Datum Datentyp ...
Wie auch immer, bevor Sie Ihre Frage beantworten! (Siehe das Beispiel tl; dr für einen Datumsdatentyp)
Eine Funktion, die den vom Leser gelieferten Wert in ein Objekt umwandelt, das im Modell gespeichert wird. Es wird die folgenden Parameter übergeben:
v: Gemischt
Der Datenwert, wie er vom Reader gelesen wird, wenn er nicht definiert ist, verwendet den konfigurierten Standardwert. rec: Ext.data.Modell
Das Datenobjekt, das das Modell enthält, wie es bisher vom Reader gelesen wurde. Beachten Sie, dass das Modell zu diesem Zeitpunkt möglicherweise nicht vollständig ausgefüllt ist, da die Felder in der Reihenfolge gelesen werden, in der sie in Ihrem Felder-Array definiert sind.
%Vor% Ah und an dieser Stelle fand ich die Quelle Ihres Beispiels;)
Damit deklarieren Sie einen neuen Datentyp mehr oder weniger. es würde ungefähr wie
aussehen %Vor%TL; DR
Nun, um Ihre ursprüngliche Frage tatsächlich zu beantworten:
Ext hat einen Datumstyp, den Sie verwenden können: Ext.data.Types.DATE (sowie einige andere).
Ich gehe vom Typ aus: Datum hat nicht funktioniert, sonst wären wir nicht hier! Also wahrscheinlich sind nur 4 richtig referenziert. Aber! das funktioniert:
%Vor%Geige des Arbeitscodes:
Nur um alles oben auf einfache Weise zu umbrechen:
Ja, Sie können Daten einfach als Daten in Ihren Modellen speichern. Um das zu tun, brauchst du:
Geben Sie den Feldtyp in einem Modell an (denken Sie daran, die Datei Ext.data.Types
in das Feld required
in Ihrer app.js einzufügen):
Verwenden Sie Modifikatoren mit Datumsformat für diese Felder in Ihren XTemplates:
%Vor% um das Datumsfeld vor dem Senden an den Server korrekt in den String zu konvertieren. Zum Beispiel speichere ich Daten im Format "d.m.Y"
, also mache ich die folgende Umwandlung:
Das ist es! Jetzt haben Sie alle Möglichkeiten des nativen Datumsfeldes, d. H. Sie können Gruppierungen, Sortierungen usw. problemlos durchführen.
Tags und Links sencha-touch extjs sencha-touch-2