Перевести ошибки Carrierwave Minimagick
Я обновил свою версию несущей-монгоид до 1.x
(следовательно, используя carrierwave 1.x
) и следующий тест не пройден, поскольку сообщение об ошибке больше не переводится надлежащим образом. Ранее у меня было красиво переведенное сообщение
Ожидается найти текст "Vous n'êtes pas autorisé à uploader des fichiers [.fail]"
(FR переводится как "Вы не авторизованы для загрузки файлов [.fail] files)"
Новое сообщение об ошибке стало
"[...] Логотип Не удалось манипулировать с помощью MiniMagick, возможно, это не изображение? Ошибка оригинала:
identify /tmp/mini_magick20180921-2677-95omyw.fail
Ошибка: ошибка: определить: нет делегата декодирования для этого формата изображения `/tmp/mini_magick20180921-2677-95omyw.fail' @ error/constitute.c/ReadImage/544.
Я не изменил свой загрузчик, и у меня есть белый список внутри
class CompanyLogoUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick
def extension_white_list
%w(jpeg jpg png gif)
end
У меня также есть следующие переводы
fr:
errors:
messages:
extension_white_list_error: "Vous n'êtes pas autorisé à uploader des fichiers %{extension}, les fichiers autorisés sont: %{allowed_types}"
Что пошло не так?
- carrierwave-Mongoid-1.1.0
- carrierwave-1.2.3
- Рельсы-5.0.5
- Mongoid-6.1.1
РЕДАКТИРОВАТЬ: я попробовал следующее, которое не работало / было недостаточно
Кажется, я пропустил следующую строку 1.0
Проверять по фактическому типу содержимого файлов (@eavgerinos)
Итак, чего мне не хватало, так это добавить
def content_type_whitelist
/image\//
end
метод для моих загрузчиков и
content_type_whitelist_error: "Vous n'êtes pas autorisé à uploader des fichiers %{content_type}"
В моих переводах файлов