1

リダクターWYSIWYGを使用しています。ドキュメントから、Amazon S3 イメージのアップロードをサポートしています。アマゾンに画像をアップロードする別のシンプルなレールアプリを作成しました。

HTML

<%= form_for @image, :html => {:multipart => true, :accept => "image/gif,image/png,image/jpg"} do |f| %>

   <div>
     <label>Image</label>
   </div>
   <div style="width: 400px;" >
     <%= file_field 'upload', 'datafile'  %>
   </div>

   <div>
      <%= f.submit "Upload image", :class => "button" %>
   </div>

<% end  %>

ImagesController に作成アクションがあります

アクションの作成 (aws-gem を使用)

def create
  fileUp = params[:upload]
  orig_filename =  fileUp['datafile'].original_filename
  filename = sanitize_filename(orig_filename)
  AWS::S3::S3Object.store(filename, fileUp['datafile'].read, @@BUCKET, :access => :public_read)
  url = AWS::S3::S3Object.url_for(filename, @@BUCKET, :authenticated => false)
  @image = Image.new(params[:image])
  @image.filename = filename
  @image.url = url;
  if @image.save
    flash[:success] = "Image saved! "
    redirect_to root_path
  else
    render '/images/new'
  end
end

同じロジックを適用して、リダクターで画像をアップロードしようとしています。私は私のjavascriptにこれを持っています

$(document).ready(
    function()
    {
        $('#answer_content').redactor({
            imageUpload: '<%= upload_path %>'
        });
    }
);

私のroutes.rbで

  match "upload" => "answers#imageUpload"

リダクター フォーム データをサーバー サイド スクリプトに渡す方法がわかりません。リダクターでアップロード スクリプトの html を検査する

ここに画像の説明を入力

<input type="file" id="redactor_file" name="file">

他のメソッドと同じように、このデータを Rails メソッドでキャプチャするにはどうすればよいですか? このリダクター HTML によって渡されるパラメーターがわかりません。ありがとう

4

0 に答える 0