刪除會員的優雅方式,避免留存髒資料

tu6ge-php發表於2020-11-19

我們在做專案的時候,一般在初期就會建立好賬號體系,後來隨著需求的增多,可能會忽略這個模組。
當我們要做刪除使用者功能時,可能考慮的比較全面,需要把已有的業務邏輯,連同使用者一起刪除。
但是後續的需求,再增加使用者關聯資料的時候,可能會遺漏掉刪除使用者這種情況。這樣的話,我們就避免不了在業務程式碼中插入這種查詢

$history = History::has('user')->get();

為了避免這種情況的發生,我們可以在專案中增加一個刪除使用者的事件,以後如果有需要刪除使用者相關業務資料的時候,只需要修改 EventServiceProvider 檔案即可。這樣做的好處就是,與你之前建立的賬號刪除功能 解耦 ,你不需要回顧之前賬號系統中的一些邏輯,只需要專注你當前在做的功能即可。

然後我們的業務程式碼,可以改成:

$history = History::where('user_id', >, 0)->get();
本作品採用《CC 協議》,轉載必須註明作者和本文連結
大多數知識,不需要我們記住,只需要認知即可

相關文章