Shrine图像上传器未正确安装

问题描述 投票:0回答:1

我正在尝试遵循本教程https://gorails.com/forum/direct-file-uploads-to-s3-part-2-example-gorails,并且在加载本地服务器时,它会吐出此错误:

 routing/mapper.rb:613:in `mount': A rack application must be specified (ArgumentError)

这是我的路线:

Rails.application.routes.draw do
 root to: "photos#index"
 resources :photos

 mount ImageUploader::UploadEndpoint, at: "/images/upload"
end

如果有人需要,我的shrine.rb初始化程序

require "shrine/storage/s3"

 s3_options = {
  access_key_id: "MY_ACCESS_KEY",
  secret_access_key: "MY_SECRET_KEY",
  region: "S3_REGION",
  bucket: "S3_BUCKET",
}

Shrine.storages = {
  cache: Shrine::Storage::S3.new(prefix: "cache", **s3_options),
  store: Shrine::Storage::S3.new(prefix: "store", **s3_options),
}

Shrine.plugin :activerecord
Shrine.plugin :upload_endpoint
Shrine.plugin :presign_endpoint
Shrine.plugin :restore_cached_data

任何帮助,我们将不胜感激!

amazon-s3 ruby-on-rails-5 shrine
1个回答
0
投票

Shrine::UploadEndpoint类是带有旧direct_upload插件的Rack应用程序。使用upload_endpoint插件,您现在可以调用Shrine.upload_endpoint方法为选定的存储创建Rack应用程序:

mount ImageUploader.upload_endpoint(:cache), at: "/images/upload"
© www.soinside.com 2019 - 2024. All rights reserved.