неинициализированная константа PhotoUploader :: Cloudinary - PullRequest
0 голосов
/ 01 июня 2019

Привет. В течение последних нескольких часов я пытался добавить отобранные изображения в мой начальный файл с помощью carrierwave.Я добавил драгоценный камень, который я добавил к своей модели, а также добавил к параметрам в моем контроллере, однако я продолжаю получать эту ошибку: NameError in ServicesController#index uninitialized constant PhotoUploader::Cloudinary

Я искал в Интернете, почему это может быть бесполезным.

Я перезапустил сервер, остановил пружину, закрыл терминал и снова открыл, а также добавил «Требуется carrierwave» в верхней части моего файла service.rb, но ничего не работает.

Заранее спасибо.

service.rb

class Service < ApplicationRecord
  mount_uploader :photo, PhotoUploader
end

app / uploaders / photo_uploader.rb

class PhotoUploader < CarrierWave::Uploader::Base
  include Cloudinary::CarrierWave
end

Сервисный контроллер

class ServicesController < ApplicationController
before_action :find_service, only: [:show]

  def index
    if params[:category].present?
      @services = Service.where(category: params[:category])
    else
      @services = Service.all
    end
  end

  def show
  end

  private

  def service_params
    params.require(:service).permit(:name, :description, :category, :picture_url, :video, :photo, :photo_cache)
  end

  def find_service
    @service = Service.find(params[:id])
  end
end

gemfile:

gem 'carrierwave', '~> 1.2'

начальный файл

Service.destroy_all
puts 'Creating services...'


Service.create!({
  name: "Carpet Cleaning Stain 1",
  description: "v stubborn",
  category: "stain removal",
  remote_photo_url: "https://res.cloudinary.com/dnsof9xnr/image/upload/v1558043148/58625931_1259911844176433_4676539998827184128_n_1.jpg"
})

Я добавил строку удаленного URL в соответствии с этим уроком: https://github.com/carrierwaveuploader/carrierwave/wiki/How-to:-Upload-remote-image-urls-to-your-seedfile

...