2 回答

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個(gè)贊
首先,您必須在應(yīng)用程序中實(shí)現(xiàn)一個(gè)角色系統(tǒng),并設(shè)置 2 個(gè)角色管理員和用戶。 您可以通過(guò)多種方式進(jìn)行過(guò)濾,但我建議的方式是:
如果角色是用戶,則在模型中使用一個(gè)范圍來(lái)刪除 inactif 范圍。
在模型中使用特征來(lái)為每個(gè)角色返回正確的數(shù)據(jù),例如特征中的 2 個(gè)方法,一個(gè)用于用戶,另一個(gè)用于管理員。
這兩種方法可以在模型級(jí)別上進(jìn)行過(guò)濾,這就是我的建議,擁有一個(gè)高質(zhì)量的軟件。并且不要有骯臟和硬編碼的解決方案。因?yàn)槿绻麑?lái)這種情況發(fā)生變化,您不必交叉所有代碼,只需編輯特定部分即可。
您可以查看 laravel 文檔以查看有關(guān)概念的詳細(xì)信息。

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊
如果您想繼續(xù)使用相同的方法,則僅當(dāng)用戶不是管理員時(shí)才添加對(duì)數(shù)據(jù)庫(kù)查詢的限制。例如
$query = \App\Model::query();
if( !Auth::user()->isAdmin() )
{
$query->where('active', true);
}
$records = $query->get();
- 2 回答
- 0 關(guān)注
- 181 瀏覽
添加回答
舉報(bào)