Laravel 5 Laravel Eloquent:在表中设置自定义格式的ID

Laravel 5 Laravel Eloquent:在表中设置自定义格式的ID,laravel-5,eloquent,Laravel 5,Eloquent,有没有办法在创建时添加自定义格式的ID 例如,有一个表“Customers”,在该表中有一个主键-“ID(自动增量)”和一个唯一键“customer_ID” 现在,当我创建一个新客户时,“ID”是自动递增的,因此它将自动设置为DB 我想在创建时将“客户id”设置为“2018-0001”。 CurrentYear-000 INSERTED_ID您可以为此使用创建的模型事件 雄辩的模型引发了多个事件,让您能够与 模型生命周期中的以下几点:检索,创建,创建, 更新,更新,保存,保存,删除,删除,恢复,

有没有办法在创建时添加自定义格式的ID

例如,有一个表“Customers”,在该表中有一个主键-“ID(自动增量)”和一个唯一键“customer_ID”

现在,当我创建一个新客户时,“ID”是自动递增的,因此它将自动设置为DB

我想在创建时将“客户id”设置为“2018-0001”。
CurrentYear-000 INSERTED_ID

您可以为此使用创建的
模型事件

雄辩的模型引发了多个事件,让您能够与 模型生命周期中的以下几点:
检索
创建
创建
更新
更新
保存
保存
删除
删除
恢复
已恢复
。事件允许您在每次特定事件发生时轻松执行代码 模型类在数据库中保存或更新。每项活动都会收到 通过其构造函数创建模型的实例

创建
customer
后,您可以生成
customer\u id
并保存它:


Customer.php

use Carbon\Carbon;

class Customer extends Model
{
    protected static function boot()
    {
       parent::boot();

       static::created(function ($obj) {
          $obj->customer_id = Carbon::now()->year.'-000'.$obj->id;
          $obj->save();
      });
    }
}
欢迎来到Stackoverflow:)为了获得更好的答案并避免被否决,请分享您迄今为止的尝试。谢谢