Standardwert der Zeitstempelspalte auf den aktuellen Zeitstempel in Laravel-Migrationen festlegen
Frage:
Wie Kann ich in Laravel-Migrationen eine Zeitstempelspalte mit einem Standardwert definieren, der auf den aktuellen Zeitstempel festgelegt ist, und ihn bei Änderung auf den aktuellen Zeitstempel aktualisieren?
Antwort:
MySQL:
Um den Standardwert einer Zeitstempelspalte auf den aktuellen Zeitstempel festzulegen und ihn bei Änderung in MySQL zu aktualisieren, können Sie die Spaltenmodifikatoren useCurrent() und useCurrentOnUpdate() verwenden:
<code class="php">$table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->useCurrent()->useCurrentOnUpdate();</code>
PostgreSQL:
Für PostgreSQL ist kein spezifischer Modifikator erforderlich. Durch einfaches Verwenden der Methode timestamp() wird der Standardwert auf den aktuellen Zeitstempel gesetzt:
<code class="php">$table->timestamp('created_at');</code>
Ältere Laravel-Versionen:
In Laravel-Versionen vor 5.1.25 , können Sie die Methode DB::raw() verwenden, um den Standardwert festzulegen:
<code class="php">$table->timestamp('created_at')->default(DB::raw('NOW()')); $table->timestamp('updated_at')->default(DB::raw('CURRENT_TIMESTAMP'));</code>
Probleme:
Das obige ist der detaillierte Inhalt vonWie setze ich den Standardwert einer Zeitstempelspalte auf den aktuellen Zeitstempel und aktualisiere ihn bei Änderungen in Laravel-Migrationen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!