CanCan1.6を使用したRails3.1アプリがあります。でさまざまな属性を保護していますattr_protected ... :as => :api
。を使用したいのですload_and_authorize_resource
が、保護されたフィールドを削除するためにも使用します。何か案は?
編集:これが私の現在の回避策です:
orders#newでは、をスキップしてload_resource
承認しています。適切なスコープを使用して、新しい注文を直接初期化します。
@order = Order.new(params[:order], :as => :api)
次に、ユーザーを手動で設定します。
@order.user = current_user
確かに大したことではありませんが、他の場所で行っているように、CanCanをネイティブにロードして承認するよりもエレガントではありません。