CanCan 1.6을 사용하는 Rails 3.1 앱이 있습니다. 나는 다양한 속성을 attr_protected ... :as => :api
으로 보호하고 있습니다. load_and_authorize_resource
을 사용하고 싶지만 보호 된 필드를 제거하고 싶습니다. 어떤 아이디어?레일 CanCan 및 Scoped attr_protected
편집 : 주문 # 새로운에서
, 내가 load_resource
을 생략하고 바로 허가 해요 : 여기에 내 현재 해결 방법입니다.
@order.user = current_user
물론
하지 큰 거래를 할 것이 아니라, 단지시키는보다 우아한 :
@order = Order.new(params[:order], :as => :api)
그런 다음 사용자가 수동 설정 : 나는 적절한 범위로, 직접 새로운 질서를 초기화 CanCan은 내가 다른 곳에서하고있는 것처럼 기본적으로로드하고 권한을 부여합니다.
통찰력을위한 감사합니다 Kosmonaut. 불행히도,이 솔루션은 중첩 된 리소스와 함께 작동하지 않습니다.이 경우에는 실제로 사용하고 있습니다. 위의 게시물을 현재 해결 방법으로 업데이트했지만 해결 방법보다 좀 더 우아한 것을 기대했습니다. 중첩이 아니라면 솔루션이 정상적으로 작동했을 것입니다. – ideaoforder