Я использую cancan в своем приложении rails 3 с mysql DB.
Когда я создаю правило на основе столбца enum, я всегда получаю AccessDenied только для действия "show".Есть идеи почему?Я использую enumerated_attribute для принудительного применения перечислений в моделях и фактического столбца типа ENUM в базе данных.
Пример: у меня есть сообщение, которое имеет конфиденциальность поля перечисления с ['PUBLIC', 'PRIVATE', 'LOCAL'].Я всегда получаю AccessDenied, когда использую это правило:
может: читать, публиковать,: частная жизнь => 'ОБЩЕСТВЕННАЯ'
Любое другое правило работает отлично.Приведенное выше правило также прекрасно работает с действием «index».
ОБНОВЛЕНИЕ 1:
Моя способность.rb:
class Ability
include CanCan::Ability
def initialize(user)
can :read, Post, :privacy => 'PUBLIC'
end
end