gem redactor-rails上传文件

时间:2013-10-31 07:17:31

标签: ruby-on-rails wysiwyg redactor

上传pdf get错误时:  未捕获的TypeError:无法读取null的属性“0”

我的配置js:

 $(function(){
  var csrf_token = $('meta[name=csrf-token]').attr('content');
  var csrf_param = $('meta[name=csrf-param]').attr('content');
  var params;
  if (csrf_param !== undefined && csrf_token !== undefined) {
   params = csrf_param + "=" + encodeURIComponent(csrf_token);
  } 
  $('.redactor').redactor(
   { "imageUpload":"/redactor_rails/pictures?" + params,
     "fileUpload":"/redactor_rails/documents?" + params,
     "imageGetJson":"/redactor_rails/pictures",
     "path":"/assets/redactor-rails",
     "css":"style.css"}
  );

});

RedactorRailsDocumentUploader:

  class RedactorRailsDocumentUploader < CarrierWave::Uploader::Base
   include RedactorRails::Backend::CarrierWave

   # storage :fog
   storage :file

   def store_dir
    "system/redactor_assets/documents/#{model.id}"
   end

   def extension_white_list
     RedactorRails.document_file_types
   end
  end

1 个答案:

答案 0 :(得分:0)

我怀疑是因为您的RedactorRails.document_file_types中没有列出“PDF”文件类型。

在redactor-rails gem中,它仅列出'pdf',而不是'PDF','Pdf'等。请参阅第23行:https://github.com/SammyLin/redactor-rails/blob/master/lib/redactor-rails.rb

除非你有安全需要,否则我会注释掉:

   def extension_white_list
     RedactorRails.document_file_types
   end