2016-05-19 7 views
0

Я сделал простую систему ACL на моем приложении со следующими таблицами:ACL может метод Laravel 5.2

employees-> roles-> roles_permissions < -Permissions

У меня также есть модели для сотрудников, роли и таблиц разрешений.

И теперь я хочу реализовать метод «can», где я даю разрешающий модуль, и он возвращает true или false.

До сих пор я пытался (безуспешно) следующий подход (который я использовал без проблем на моем «есть» метод):

public function can($slug) 
{ 
    return $this->role->permissions->slug == $slug; 
} 

Как я могу сделать мой «может» метод работать, как я ожидал ?

ответ

0

Что я сделал, так как я спросил:

public function can($slug) 
    { 
     return $this->role->permissions->where('slug', $slug)->first()->slug == $slug; 
    } 

Не знаю, если это лучший подход, но он работает.

+1

Вы можете просто найти разрешение: return $ this-> role-> permissions-> где ('slug', $ slug) -> count()> 0; – jcorry

Смежные вопросы