我正在尝试遵循本教程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
任何帮助,我们将不胜感激!
Shrine::UploadEndpoint
类是带有旧direct_upload
插件的Rack应用程序。使用upload_endpoint
插件,您现在可以调用Shrine.upload_endpoint
方法为选定的存储创建Rack应用程序:
mount ImageUploader.upload_endpoint(:cache), at: "/images/upload"