Завершено 406 при рендеринге AJAX-поста с помощью Image Rails 5.2 - PullRequest
0 голосов
/ 13 марта 2019

Я использую jquery-ujs для выполнения вызовов AJAX.Обычно это будет работать с изображениями в моей локальной среде разработки.Но по какой-то причине я не могу отобразить изображения, загружаемые в AWS S3.Я перенаправлен на Завершено 406, если изображение включено.Если изображение отсутствует, запись фиксируется успешно.Изображения вызывают откат метода создания.Мои самые последние изменения, должны были добавить fog-aws .Я даже установил конфигурационный файл для S3 в carrierwave.rb.После внесения изменений я даже не могу отобразить резервные изображения default_url.Как я могу исправить мой AJAX-запрос на разрешение загрузки изображений / текста / контента?

posts_controller.rb

def create
   @post = current_user.posts.build(post_params)

    respond_to do |format|
      if @post.save
        format.js
      end
    end
end

create.js.erb

$("#container_posts").prepend("<%= j render partial: "posts/#{@post.post_type}", locals: {post: @post } %>");
$("#post_<%= @post.id %>").hide().fadeIn(1000);

carrierwave.rb

require 'carrierwave/storage/abstract'
require 'carrierwave/storage/file'
require 'carrierwave/storage/fog'

CarrierWave.configure do |config|
  if Rails.env.test? or Rails.env.development?
    config.storage :file
    config.asset_host = 'http://127.0.0.1:3000'
  else
    config.storage = :fog
    config.fog_provider = 'fog/aws'
    config.fog_use_ssl_for_aws = true
    config.fog_directory  = ENV['S3_BUCKET']
    config.fog_public     = true
    config.fog_attributes = { 'Cache-Control': 'max-age=315576000' }
    config.asset_host = 'https://app.herokuapp.com'
        config.fog_credentials = {
        provider:               'AWS',
        aws_access_key_id:      ENV['S3_ACCESS_KEY'],
        aws_secret_access_key:  ENV['S3_SECRET_KEY'],
        region: ENV["S3_REGION"]
        }
  end
end
...