W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
使用 Gate 來授權(quán)動(dòng)作的時(shí)候, 你應(yīng)該使用 allows
或者 denies
方法。 注意,不需要將當(dāng)前已認(rèn)證用戶傳遞給這些方法。 Laravel 會(huì)自動(dòng)處理好已經(jīng)認(rèn)證通過的用戶,然后傳遞給 Gate 閉包函數(shù):
if (Gate::allows('edit-settings')) {
// 指定當(dāng)前用戶可以編輯設(shè)置
}
if (Gate::allows('update-post', $post)) {
// 指定當(dāng)前用戶可以進(jìn)行更新...
}
if (Gate::denies('update-post', $post)) {
// 指定當(dāng)前用戶不能更新...
}
如果你想判斷一個(gè)特定的用戶是否已經(jīng)被授權(quán)訪問某個(gè)動(dòng)作, 你可以使用在 Gate
在 facade 的 forUser
方法:
if (Gate::forUser($user)->allows('update-post', $post)) {
// 用戶可以更新...
}
if (Gate::forUser($user)->denies('update-post', $post)) {
// 用戶不能更新...
}
您可以使用 any
或 none
方法一次授權(quán)多個(gè)操作:
if (Gate::any(['update-post', 'delete-post'], $post)) {
// 用戶可以更新或刪除
}
if (Gate::none(['update-post', 'delete-post'], $post)) {
// 用戶不能更新或刪除
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: