ApplicationApi.php 755 B

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. namespace App\Models;
  3. use Hidehalo\Nanoid\Client;
  4. use Illuminate\Database\Eloquent\Factories\HasFactory;
  5. use Illuminate\Database\Eloquent\Model;
  6. class ApplicationApi extends Model
  7. {
  8. use HasFactory;
  9. protected $fillable = ['token', 'memo' , 'last_used'];
  10. protected $primaryKey = 'token';
  11. public $incrementing = false;
  12. protected $dates = ['last_used'];
  13. public static function boot()
  14. {
  15. parent::boot();
  16. static::creating(function (ApplicationApi $applicationApi) {
  17. $client = new Client();
  18. $applicationApi->{$applicationApi->getKeyName()} = $client->generateId(48);
  19. });
  20. }
  21. public function updateLastUsed(){
  22. $this->update(['last_used' => now()]);
  23. }
  24. }