在我的項目中,我正在處理多個數據庫和一個中央數據庫。我正在使用 spatie 的活動日志包將控制面板中完成的操作記錄到所有這些數據庫中。我在每個數據庫(中央數據庫除外)中都有帶有自動遞增主鍵的表項,以及另一個名為 hash 的索引,它是一種 uuid。哈??偸俏ㄒ坏摹,F在,當我想記錄操作時,我會遇到問題,因為它會保存 Item 的 ID,所以......在我的活動表中,我將獲得兩個 subject_id = 1 的記錄,而一個活動發生在一個數據庫和另一個數據庫上的 Item在另一個,依此類推。如何在不更改相關模型上的 $primaryKey 的情況下更改集合變形以使用我的 uuid 列而不是 id?物品型號關系:public function activities(): MorphMany{ $this->morphMany(Activity::class, 'subject', 'subject_id', 'hash');}活動模型關系:public function subject(): MorphTo{ if (config('activitylog.subject_returns_soft_deleted_models')) { return $this->morphTo()->withTrashed(); } return $this->morphTo('activity_log', 'subject_type', 'subject_id', 'hash');}另外,我在 ActivityLogger 中發現:public function performedOn(Model $model){ $this->getActivity()->subject()->associate($model); return $this;}
- 1 回答
- 0 關注
- 239 瀏覽
添加回答
舉報
0/150
提交
取消