Zastanawiałem się, w jaki sposób można zdefiniować klasę zdolności i służyć tej klasy zdolności w zależności od użytkownika, który jest zalogowany.szyny CAN CAN Możliwość Klasy Dla wielu opracować modele
używam aktywny Administrator, Can Can i opracować i pomyślnie utworzyłem modele User i AdminUser.
mam to w moim ability.rb
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new
if (user)
can :manage, Item
end
end
end
Teraz użyłem tego wpisu wiki ustalić, że rzeczywiście możemy zdefiniować niestandardowy plik zdolności i używać zamiast ability.rb:
https://github.com/ryanb/cancan/wiki/changing-defaults
Ale to, co chciałem zrobić to, by móc korzystać z ability.rb czy „użytkownik non-admin” jest podpisany i zwyczaj abilty jeśli administrator użytkownik jest zalogowany.
Pytanie boczne: Czy można to zrobić tak, że nie potrzebuję niestandardowego i mogę ustawić uprawnienia w jednym pliku ability.rb?
Ach, masz rację. Nie zauważyłem, że użyłeś osobnej klasy dla użytkowników i administratorów. Powinieneś być w stanie zmienić klasę używaną przez Active Admin, ale nie będąc użytkownikiem tego systemu, nie jestem pewien dokładnie, gdzie to jest. Prawdopodobnie powinien jednak sprawdzić twoje inicjatory. – jdl