CanCanCan вид только если имеет атрибут - PullRequest
0 голосов
/ 07 марта 2019

Я использую CanCanCan для управления страницами авторизации.

Вот как настроена моя страница Способностей:

class Ability
 include CanCan::Ability
 def initialize(user)

#return if user.nil?
if user.nil? 
  can :read, User
  can :read, Talent, {is_major: false}
else

Пользователь имеет один талант. И у Таланта есть метод с именем: is_major. Этот метод проверяет, есть ли у таланта более 18 лет.

Я хочу, чтобы Пользователь, который не вошел в приложение, мог читать Талант, только если этот Талант is_major.

Как я могу настроить его на CanCanCan?

1 Ответ

0 голосов
/ 07 марта 2019

Проблема здесь была только в синтаксисе:

Если я добавлю:

if user.nil? 
  can :read, User
  can :read, Talent, is_major?: true
else

Это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...