RoR Carrierwave:通过多次上传添加远程文件
RoR Carrierwave: Add remote files with multiple upload
我正在使用载波同时上传多个文件的可能性,如下所述:
https://github.com/carrierwaveuploader/carrierwave#multiple-file-uploads
所以我有
class Item < ActiveRecord::Base
mount_uploaders :images, ImagesUploader
serialize :images, JSON
...
end
现在我想上传一个远程文件(不是从本地驱动器)。通常我会在我的控制器中使用这样的东西
class ItemsController < ApplicationController
...
item.remote_images_url = params[:image_url]
...
end
但是助手remote_images_url(注意复数形式remote_images_url) 只给我
undefined method remote_images_url
我还尝试了 remote_image_url,这将是单个文件上传情况下的默认助手。也是未定义的方法。
使用 "multiple files upload" 和载波时如何上传远程文件?
您需要使用 item.remote_images_urls
而不是 item.remote_images_url
并分配远程数组 url。这对我有用,尽管 CarrierWave rubydoc 建议我使用 item.remote_image_urls
。所以,也许你应该尝试其中之一。
最终我查看了 carrierwave 的 github 存储库,我发现了这个:
https://github.com/carrierwaveuploader/carrierwave/blob/master/lib/carrierwave/mount.rb
幸运的是,这一切都在这个文件的注释中进行了描述。只有一件小事我必须改变。在评论中说,对于名为 images 的列,我必须使用辅助方法 remote_image_urls。但实际上我必须使用 remote_images_urls(总是复数)。
这就是我的解决方案:
class Item < ActiveRecord::Base
mount_uploaders :images, ImagesUploader
serialize :images, JSON
...
end
class ItemsController < ApplicationController
...
item.remote_images_urls = [params[:image_url]]
...
end
注意辅助方法中正确的复数类型以及参数的周围数组(carrierwave 期望数组)。
我正在使用载波同时上传多个文件的可能性,如下所述: https://github.com/carrierwaveuploader/carrierwave#multiple-file-uploads
所以我有
class Item < ActiveRecord::Base
mount_uploaders :images, ImagesUploader
serialize :images, JSON
...
end
现在我想上传一个远程文件(不是从本地驱动器)。通常我会在我的控制器中使用这样的东西
class ItemsController < ApplicationController
...
item.remote_images_url = params[:image_url]
...
end
但是助手remote_images_url(注意复数形式remote_images_url) 只给我
undefined method remote_images_url
我还尝试了 remote_image_url,这将是单个文件上传情况下的默认助手。也是未定义的方法。
使用 "multiple files upload" 和载波时如何上传远程文件?
您需要使用 item.remote_images_urls
而不是 item.remote_images_url
并分配远程数组 url。这对我有用,尽管 CarrierWave rubydoc 建议我使用 item.remote_image_urls
。所以,也许你应该尝试其中之一。
最终我查看了 carrierwave 的 github 存储库,我发现了这个:
https://github.com/carrierwaveuploader/carrierwave/blob/master/lib/carrierwave/mount.rb
幸运的是,这一切都在这个文件的注释中进行了描述。只有一件小事我必须改变。在评论中说,对于名为 images 的列,我必须使用辅助方法 remote_image_urls。但实际上我必须使用 remote_images_urls(总是复数)。
这就是我的解决方案:
class Item < ActiveRecord::Base
mount_uploaders :images, ImagesUploader
serialize :images, JSON
...
end
class ItemsController < ApplicationController
...
item.remote_images_urls = [params[:image_url]]
...
end
注意辅助方法中正确的复数类型以及参数的周围数组(carrierwave 期望数组)。