В Laravel миграции являются важной частью управления базами данных. Они позволяют вам определять и изменять структуру таблиц вашей базы данных. Столбец «created_at» является общим требованием во многих приложениях, поскольку он отслеживает временную метку создания записи. В этой статье мы рассмотрим различные методы обработки миграции «create_at» в Laravel, а также приведем примеры кода.
Метод 1: использование метода временных меток
Самый простой способ включить столбец «create_at» в ваши миграции — использовать метод timestamps()
, предоставленный Laravel. Этот метод создает два дополнительных столбца: «created_at» и «updated_at» и автоматически заполняет их метками времени.
public function up()
{
Schema::create('your_table', function (Blueprint $table) {
$table->id();
$table->timestamps();
});
}
Метод 2: добавление столбца вручную
Если вы предпочитаете больше контроля над миграцией, вы можете вручную добавить столбец «created_at», используя метод timestamp()
. Этот метод создает столбец метки времени, допускающий значение NULL.
public function up()
{
Schema::create('your_table', function (Blueprint $table) {
$table->id();
$table->timestamp('created_at')->nullable();
});
}
Метод 3: установка значения по умолчанию для столбца
Чтобы установить значение по умолчанию для столбца «created_at», вы можете связать метод default()
после timestamp()
метод. Это значение будет использоваться при создании новой записи.
public function up()
{
Schema::create('your_table', function (Blueprint $table) {
$table->id();
$table->timestamp('created_at')->default(now());
});
}
Метод 4: использование библиотеки Carbon
Библиотека Carbon предоставляет удобный способ работы с датами и временем в Laravel. Вы можете использовать его, чтобы установить значение столбца “create_at” в методе boot()
вашей модели.
use Illuminate\Support\Carbon;
public function boot()
{
parent::boot();
static::creating(function ($model) {
$model->created_at = Carbon::now();
});
}
В этой статье мы рассмотрели несколько методов обработки миграции «create_at» в Laravel. Предпочитаете ли вы простоту метода timestamps()
или гибкость добавления столбца вручную, Laravel предоставляет различные варианты в соответствии с вашими потребностями. Кроме того, мы увидели, как можно использовать библиотеку Carbon для установки значения «created_at» во время создания модели. Используя эти методы, вы можете эффективно управлять столбцом «create_at» в своих приложениях Laravel.
Не забудьте выбрать метод, который лучше всего соответствует вашим требованиям и предпочтениям. Приятного кодирования!