Ich habe eine Migration, die die Methode timestamps()
hat, und dann habe ich einen Startwert für diese Tabelle.
Der Keim sieht so aus:
%Vor%Wenn alles ausgeführt wird:
%Vor% Der Eintrag wird eingefügt, aber die Werte von created_at
und updated_at
sind beide 0000-00-00 00:00:00
Warum sind sie nicht richtig eingestellt?
Hier sind die Spaltenschemata, die es erstellt:
%Vor%Ich möchte diese Schemata:
%Vor%Wenn Sie Daten einfügen, die nicht mit Eloquent arbeiten, müssen Sie eigene Zeitstempel einfügen.
Wenn Sie Folgendes verwenden:
%Vor% Sie werden den Zeitstempel korrekt ausgefüllt haben (natürlich müssen Sie zuerst MyTable
model erstellen)
BEARBEITEN
Wenn Sie es wirklich wollen, können Sie ändern:
%Vor%in:
%Vor%Und wenn Sie ein Modell für diese Tabelle erstellen, sollten Sie
festlegen %Vor%um sicherzustellen, dass Eloquent nicht versucht, sie auf den Weg zu bringen.
EDIT2
Es gibt noch ein weiteres wichtiges Problem. Wenn Sie die Einstelldaten in Tabellen aus PHP und anderen in MySQL mischen, sollten Sie sicherstellen, dass sowohl in PHP als auch in MySQL genau dieselbe Datums- und Zeitzone verwendet wird oder Sie sollten den gleichen Datumsvergleich verwenden wie in Datensatz (entweder MySQL oder MySQL) oder PHP). Andernfalls können Sie beim Ausführen von Abfragen unerwartete Ergebnisse erhalten, z. B.
%Vor%kann sich von der Abfrage mit passendem PHP-Datum unterscheiden
%Vor%weil es auf dem PHP-Server zum Beispiel 2015-12-29 aber auf dem MySQL-Server 2015-12-30
sein könnteTags und Links php laravel eloquent laravel-seeding laravel-migrations