Имам проблем с 3 нива на влагане на модели в CanCan, комбинирани с наследени ресурси. Четох, че трябва да вложим всичко до 2 нива, но трябваше да поставя всичко под account
модел и сега се опитах да направя това в CanCan:
load_and_authorize_resource :account
load_and_authorize_resource :project, :through => :account
load_and_authorize_resource :model, :through => :project
Това ми дава променлива @account, която има стойност на @project, сякаш презаписва това. @project е това, което трябва да бъде и @model също. Това моя ли е грешката, на CanCan, Inherited Resources или просто CanCan не поддържа 3 нива на влагане? Освен това правя това в IR за ModelsController.
belongs_to :account, :finder => :find_by_name! do
belongs_to :project, :finder => :find_by_name!
end
Друго странно нещо е, когато премахна частта load_and_
от дефиницията на CanCan. Тогава работи, но прочетох, че може да бъде опасно да не използвате частта load
.
Мога ли да използвам само authorize_resource
или трябва да направя нещо с CanCan?
authorize_resource
вместо това. github.com/ryanb/cancan/wiki/Authorizing-Controller-Actions - person jdl   schedule 22.03.2011