Mam migrację, która ma metodę timestamps()
, a następnie mam seed do zaszczepienia tej tabeli.Znaczniki czasu Laravel() nie tworzą CURRENT_TIMESTAMP
Schema::create('mytable', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->timestamps();
});
Nasiona wygląda następująco:
DB::table('mytable')->insert([
[
'title' => 'My Awesome Title'
]
]);
Kiedy to wszystko dostaje uruchomić za pomocą:
php artisan migrate:refresh --seed
Element zostanie wstawiony, ale wartości created_at
i updated_at
są zarówno 0000-00-00 00:00:00
dlaczego czy nie są ustawione poprawnie?
oto systemy kolumnowe, że tworzy:
`created_at` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
`updated_at` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
chciałbym tych schematów:
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
Użyj Efektywnych modeli do tworzenia rekordów zamiast interfejsu Fluent i powinny one być poprawnie ustawione. –