0

我在我的 Rails 应用程序中使用ckeditor 。它工作得很好,但我没有设法让照片上传/浏览/发送到服务器工作!

我正在使用 cancan 并且正在获取CanCan::AuthorizationNotPerformed at /pictures,即使在注释掉config.authorize_with :cancanconfig/initializers/ckeditor.rb

所以我想取消注释config.authorize_with :cancan然后使用skip_authorization_check,但我不知道在哪里使用它!我是 Rails 新手。

我几乎尽我所能!

请问有什么帮助/线索/提示吗?

4

1 回答 1

0

查看ckeditor/pictures_controller.rbgem 可以让您了解如何解决问题。(bundle open ckeditor从应用程序的根目录使用,然后导航到app/controller/ckeditor/

ckeditor/pictures_controller.rb因此,在您的 Rails 应用程序中创建一个包含以下内容的应用程序:

class Ckeditor::PicturesController < Ckeditor::ApplicationController
  load_and_authorize_resource

  def create
    @picture = Ckeditor::Picture.new
    respond_with_asset(@picture)
  end 

  def destroy
    @picture.destroy
    respond_with(@picture, :location => pictures_path)
  end 

protected

  def authorize_resource
    model = (@picture || Ckeditor::Picture)
    @authorization_adapter.try(:authorize, params[:action], model)
  end 
end

这个解决方案的关键是load_and_authorize_resourceand方法authorize_resourcecreate你就可以上传图片了。

destroy当您要删除上传的图像时,将调用该方法。

于 2013-07-02T06:39:23.257 回答