Я столкнулся со следующей ошибкой при постановке, но локально работает нормально.
NameError (uninitialized constant Manager::Seller::Product)
Строка, вызывающая ошибку в /app/services/manager/admins/sellers/products/curation.rb
module Manager
module Admins
module Sellers
module Products
class Curation
...
def my_function
@product.update(entity_id: @entity_id,
curation_status: Seller::Product.curation_statuses[:accepted])
end
....
Работаетделая его абсолютным, добавив ::
к Seller::Product
в приведенном выше коде, чтобы он разрешил его из верхней части каталога.
Странная вещь: в моем локальном / dev env я не получаюошибка.
Правильно ли я делаю интервал имен / постоянную вещь или
- Это причина того, что Rails 5 имеет
auto_reloading
в dev, но не в подготовке / производстве или - Мне не хватает настроек в config / средах / staging.rb
модели / продавца / product.rb
class Seller::Product < ApplicationRecord
...
end
end
models / seller.rb
class Seller < ActiveRecord::Base
...
end
Refs: http://guides.rubyonrails.org/autoloading_and_reloading_constants.html#autoload-paths-and-eager-load-paths