无法将动态凭据用于 ftp 存储、回形针存储-ftp、回形针



我想使用当前用户的ftp凭据,例如hostuserpassword来自Configuration表,同时使用回形针将图像存储到FTP服务器。

型号: 图片.rb

belongs_to :user
has_attached_file :image, {
  storage: :ftp,
  path:  '/Images/:filename',
  url:   '/images/:style/missing.png',
  ftp_servers: [
    {
      host: 'Host',
      user: 'User_name',
      password: 'Password'
    },
  ],
  ftp_connect_timeout: 5,
  ftp_ignore_failing_connections: true,
  ftp_keep_empty_directories: true
}    

型号: 用户.rb

has_many :images
has_many :configurations

型号: 配置.rb

belongs_to :user

我正在使用这个宝石将图像上传到ftp:https://github.com/xing/paperclip-storage-ftp

我会让ftp_servers动态化。它看起来像一个 json 对象的数组。您可以将这些对象存储在某个位置并将它们加载到模型中。幸运的是,Ruby 没有被编译,所以每次它访问这个模型时,它都会加载正确的数组。

所以你的user.rb看起来像:

belongs_to :user
has_attached_file :image, {
  storage: :ftp,
  path:  '/Images/:filename',
  url:   '/images/:style/missing.png',
  ftp_servers: load_list_of_users_servers(),
  ftp_connect_timeout: 5,
  ftp_ignore_failing_connections: true,
  ftp_keep_empty_directories: true
}

最新更新