更改活动日志表名称

Maj*_*Afy 1 php laravel

我安装了spatie/activitylog来记录用户活动,

此包中的默认表名是activity_log我想将表名更改为users_activity_log

我创建了一个模型并命名Activity但不起作用:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Spatie\Activitylog\Models;

class Activity extends Model
{
    //
    protected $table = "user_activity_log";
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

Maj*_*Afy 5

我找到了解决方案,

1-创建模型: php artisan make:model Activity

2- 将此代码放入您的模型中($table随表名更改):

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Activity extends \Spatie\Activitylog\Models\Activity
{
    //
    protected $table = "user_activity_log";
}
Run Code Online (Sandbox Code Playgroud)

3-发布logactivity配置文件:

php artisan vendor:publish --provider="Spatie\Activitylog\ActivitylogServiceProvider" --tag="config"
Run Code Online (Sandbox Code Playgroud)

4-改变activity_modellaravel-activitylog.php

'activity_model' => \App\Activity::class
Run Code Online (Sandbox Code Playgroud)

不要忘记更改迁移文件中的表名

感谢@devk