У меня есть самокатанизированная система системы авторизации на RC#386. Я заметил много дублирования между классом GuestPermission
и классом MemberPermision
.Наследование класса не наследуется, как ожидалось
class GuestPremission < BasePermission
allow_action :static, [:about, :careers, :contact, :help, :home]
end
и
class MemberPermission < BasePermission
allow_action :static, [:about, :careers, :contact, :help, :home]
end
Оба наследуют от BasePermission
. Я хочу, чтобы реорганизовать MemberPermission
класс наследовать от GuestPermission
вместо, например:
class GuestPermission < BasePermission
allow_action :static, [:about, :careers, :contact, :help, :home]
end
class MemberPermission < GuestPermission
...
end
В идеале, это должно уменьшить дублирование в MemberPermission
уже предоставляется и существует в GuestPermission
. Однако я получаю рекурсивную ошибку: filter chain haled as :authorize rendered or redirected
.
Обычно это говорит о том, что запрошенное действие # контроллера (в данном случае static#home
) не было разрешено. Но в этом случае он должен наследовать от GuestPermission
.
Любые идеи по исправлению этого, чтобы дублирование разрешений не было необходимо?
Если не все просачивания, если 'MemberPermission
Matteo