Перевести ошибки 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}"

В моих переводах файлов

0 ответов

Другие вопросы по тегам