@nluparev

Где здесь ошибка в коде для загрузки аватаров?

Нужно помощь.

Я пока не особо силен в Рельсах и здесь есть ошибка которую я не могу отыскать.

# frozen_string_literal: true

class AvatarUploader < ApplicationUploader
  include Piet::CarrierWaveExtension

  process :auto_orient,
          :strip,
          convert: 'jpg',
          resize_to_cover: [1125, 1125],
          optimize: [{ quality: 80, level: 0 }]

  version :s828px { process resize_to_cover: [828, 828] }
  version :s750px { process resize_to_cover: [750, 750] }
  version :s552px { process resize_to_cover: [552, 552] }
  version :s300px { process resize_to_cover: [300, 300] }
  version :s216px { process resize_to_cover: [216, 216] }
  version :s200px { process resize_to_cover: [200, 200] }
  version :s156px { process resize_to_cover: [156, 156] }
  version :s144px { process resize_to_cover: [144, 144] }
  version :s132px { process resize_to_cover: [132, 132] }
  version :s104px { process resize_to_cover: [104, 104] }
  version :s96px  { process resize_to_cover: [96,  96] }
  version :s88px  { process resize_to_cover: [88,  88] }
  version :s72px  { process resize_to_cover: [72,  72] }
  version :s64px  { process resize_to_cover: [64,  64] }
  version :s60px  { process resize_to_cover: [60,  60] }

  def default_filename
    ['avatar', model.gender || 'male', version_name].compact.join('_') + '.png'
  end
end


При деплое через Capistrano получаю следующую ошибку

app/uploaders/avatar_uploader.rb:14: syntax error, unexpected '}', expecting keyword_end
01 ...s resize_to_cover: [552, 552] }

Буду благодарен за любую помощь
  • Вопрос задан
  • 43 просмотра
Решения вопроса 1
oh_shi
@oh_shi
Внутри там:
def version(name, options = {}, &block)
Соответственно правильный синтаксис будет:
version(:s828px) { process resize_to_cover: [828, 828] }

или
version :s828px do process resize_to_cover: [828, 828] end

Так получается потому что у {} приоритет выше, чем у do/end.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
Там синтаксическая ошибка в коде Ruby. Если она уже исправлена, то нужно также перезапустить веб-сервер.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы