Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Menetapkan Cap Masa Lalai kepada Cap Masa Semasa dalam Migrasi Laravel?
Dalam Laravel, cap masa biasanya digunakan untuk menjejak aktiviti, seperti semasa rekod dibuat atau dikemas kini. Secara lalai, cap masa ini ditetapkan kepada 0000-00-00 00:00. Walau bagaimanapun, adalah berguna untuk menetapkan nilai lalai secara automatik kepada cap masa semasa.
Untuk cap masa yang anda ingin kemas kini dengan kerap, anda boleh menggunakan DB ::raw() berfungsi untuk menentukan CURRENT_TIMESTAMP sebagai nilai lalai:
$table->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP'));
Ini memastikan bahawa lajur create_at akan sentiasa mengandungi cap masa semasa, kedua-dua apabila rekod dibuat pada mulanya dan apabila ia dikemas kini.
Sebagai alternatif, anda boleh menggunakan kaedah useCurrent() atau useCurrentOnUpdate() untuk mencapai hasil yang sama:
$table->timestamp('created_at')->useCurrent(); $table->timestamp('updated_at')->useCurrentOnUpdate();
The useCurrent () kaedah menetapkan cap masa semasa sebagai nilai lalai untuk kedua-dua penciptaan dan kemas kini, manakala useCurrentOnUpdate() menetapkan nilai lalai untuk kemas kini sahaja.
Untuk MySQL, anda boleh gunakan klausa ON UPDATE dalam DB::raw():
$table->timestamp('updated_at')->default(DB::raw('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'));
Atas ialah kandungan terperinci Bagaimanakah Saya Menetapkan Cap Masa Lalai kepada Cap Masa Semasa dalam Migrasi Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!