Laravel timestamps () erstellt CURRENT_TIMESTAMP nicht

8

Ich habe eine Migration, die die Methode timestamps() hat, und dann habe ich einen Startwert für diese Tabelle.

%Vor%

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%     
Get Off My Lawn 29.12.2015, 17:28
quelle

3 Antworten

23

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önnte     
Marcin Nabiałek 29.12.2015, 17:31
quelle
0

Ich würde die Kohlenstoffbibliothek benutzen, wenn ich in den Zeitstempeln säe und das in der Fabrik aufstelle. Wenn nicht, könntest du so etwas tun:

%Vor%

und ich würde die $table->timestamps(); entfernen von der Migration, wenn ich es nicht benutzen werde.

    
Sari Yono 29.12.2015 19:32
quelle
0

Für spätere Versionen können Sie einfach verwenden. ( Quelle )

%Vor%     
bmatovu 24.10.2017 20:16
quelle