アタッチメント用のコントローラーには次のものがあります
def upload
@attachment = Attachment.build(:swf_uploaded_data => params[:attachment][:attachment], :user_id => current_user.id, :project_id => params[:space_id])
....
end
私が CanCan に望むことは、ユーザーが所属する project_id にのみアップロードできるようにすることです。コントローラーが正しい情報を取得していることを確認しました。nil はありません
これが私のカンカンです:
can :upload, Attachment do |attachment|
Rails.logger.info 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX- include CanCan::Ability - ATTACHMENT'
Rails.logger.info attachment.inspect
Rails.logger.info attachment.project
current_user.try(:role, attachment.space)
end
ここで問題は、その添付ファイルです。は nil で、attachment.project は nil ですか? CanCan でこの問題をどのように解決すれば、プロジェクト チーム メンバーだけが添付ファイルをプロジェクトにアップロードできるようになりますか?
ありがとうございました