Ich versuche, ein Feld vom date
Typ durch Verwendung von entity_metadata_wrapper
festzulegen, aber obwohl das Feld in mysql als Datum / Uhrzeit erstellt wird, wird beim Erstellen eines Knotens das erwartete Format JJJ-MM-TT HH: MM: SS festgelegt, wenn die Verwendung entity_metadata_wrapper
fehlschlägt. Das einzige, was ich einfügen konnte, sind Zeitstempel. Ich habe sowohl das ISO-Datumsformat als auch das Standardformat ausprobiert.
Hier ist die Zeile, die ich zum Aktualisieren verwenden möchte:
// sets reminder date in db
$wrapper->field_event_reminder_date->set($reminder_date->format("Y-m-d H:i:s"));
Vielen Dank!
Ich konnte das auf Umwegen zum Laufen bringen. Ich hätte vielleicht das Gleiche erreichen können
time()
, aber das war für mich besser, da ich genau verfolgen konnte, was ich tat, wenn ich in Zukunft jemals wieder zum Code zurückkehren würde.quelle
Wenn das Feld kein Enddatum erfasst, setzen Sie es mit dem Zeitstempel:
Wenn ja:
quelle
Die veröffentlichten Beispiele haben bei mir nicht funktioniert. Ich hatte ein Datumsfeld auf der Benutzerentität eingerichtet, mit nur einem Startdatum und ohne Uhrzeit. Das Widget sollte keine Rolle spielen, sondern nur das Standardtextfeld verwenden.
Schließlich funktionierte es mit dem Entity-Metadaten-Wrapper und musste nur -> set (time ()) verwenden. Der folgende Code zeigt das Festlegen eines Kontrollkästchens "Boolescher Wert", eines Produktreferenzfelds und des Datumsfelds.
quelle
Es scheint, dass die Einstellung des Werts von der Art des Datumsfelds abhängt. Dies funktionierte bei mir bei Verwendung eines
Date
Feldtyps mit Start- und Enddatum.Anhand eines anderen Beispiels funktionierte dies für mich mit einem
Date
Feld, unbegrenztem Wert, nur Startzeit:quelle
value
undvalue2
?