我的控制器中有以下附件
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。我确认控制器正在获取正确的信息,没有零
这是我的康康舞:
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
这里的问题,是那个附件。是零,attachment.project 是零?您如何使用 CanCan 解决此问题,以便确保只有项目团队成员才能将附件上传到项目中?
谢谢