У меня есть модель Ticket и модель TicketReply:
class Ticket < ActiveRecord::Base
has_many :replies, :class_name => "TicketReply"
end
class TicketReply < ActiveRecord::Base
belongs_to :ticket, :class_name => "Ticket"
end
Вот мой список способностей:
class Ability
include CanCan::Ability
def initialize(user)
can :manage, Ticket, :userid => user.id
can :manage, TicketReply, :ticket => { :userid => user.id }
end
end
И, наконец, мой TicketRepliesController:
class TicketRepliesController < AuthorizedController
load_and_authorize_resource :ticket
load_and_authorize_resource :ticket_reply, :through => :ticket
def create
if @ticket_reply.valid?
# ...
else
# ...
end
end
end
Однако каждый раз, когда я пытаюсь создать ответ на тикет, я получаю несанкционированное сообщение: «Вы не авторизованы для доступа к этой странице».
РЕДАКТИРОВАТЬ : я могу получить доступ к самому штрафу Ticket
через TicketsController
.
Есть идеи, что мне не хватает?