Перевести Carrierwave Minimagick ошибки - PullRequest
0 голосов
/ 23 сентября 2018

Я обновил свою версию carrierwave-mongoid до 1.x (следовательно, с использованием carrierwave 1.x), и следующий тест не прошел, поскольку сообщение об ошибке больше не переводится соответствующим образом.Ранее у меня было хорошо переведенное сообщение

, ожидаемый текст «Vous n'êtes pas autorisé à uploader des fichiers [.fail]"

(перевод FR для "Вы не авторизованы для загрузки файлов [.fail] files) "* ​​1009 *

Новое сообщение об ошибке стало

" [...] Логотип Не удалось манипулировать с 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
  • rails-5.0.5
  • mongoid-6.1.1

РЕДАКТИРОВАТЬ: я пробовал следующее, которое не работало / было недостаточно

Кажется, я пропустил следующую строку сArrierwave 1.0

Проверка с фактическим типом содержимого файлов (@eavgerinos)

Так что мне не хватало, было добавить

def content_type_whitelist
  /image\//
end

метод для моих загрузчиков и

content_type_whitelist_error: "Vous n'êtes pas autorisé à uploader des fichiers %{content_type}"

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

...