Я использую CarrierWave для загрузки изображений, и я не уверен, куда мне поместить эти файлы и как я могу получить доступ к этим файлам в моем представлении.В основном я сталкиваюсь с этой проблемой на производстве, где изображения отсутствуют.Он отлично работает в процессе разработки.
Куда поместить эти файлы, чтобы они были доступны через URL и из представления?Я попытался поместить его в 'public / uploads / picture / 1 / image.jpg', но все еще не могу получить доступ к изображению с URL
/assets/uploads/picture....
Как правильно это сделать?
class ImageUploader < CarrierWave::Uploader::Base
# Include RMagick or MiniMagick support:
include CarrierWave::RMagick
#include CarrierWave::MiniMagick
# Choose what kind of storage to use for this uploader:
storage :file
# storage :fog
# Override the directory where uploaded files will be stored.
# This is a sensible default for uploaders that are meant to be mounted:
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
[EDIT]
Итак, я сделал 'ls -al' внутри папки, содержащей все изображения, и вот что я получил
drwxr-xr-x 2 root root 4096 Feb 20 23:07 . drwxr-xr-x 4 deployer root 4096 Feb 20 23:07 ..
-rw-r--r-- 1 root root 2313 Feb 20 23:07 doraemon.gif
-rw-r--r-- 1 root root 13367 Feb 20 23:07 profile_doraemon.gif
-rw-r--r-- 1 root root 2313 Feb 20 23:07 shoutout_thumb_doraemon.gif
-rw-r--r-- 1 root root 9201 Feb 20 23:07 thumb_doraemon.gif
Похоже,файл загружен.Файлы принадлежат пользователю root.Папки и подпапки, которые их содержат, также принадлежат пользователю root.Например, это папка, содержащая указанные выше файлы.
drwxr-xr-x 2 root root 4096 Feb 20 23:07 7
Кроме того, это путь, к которому представление / HTML пытается получить доступ
<img alt="Thumb_doraemon" class="" data-id="7" src="/uploads/picture/image/7/thumb_doraemon.gif">
И на сервере, файл находится в
public/uploads/picture/images/7/thumb_doraemon.gif