簡體   English   中英

NameError(未初始化的常量 ShopsController::ShopService - Ruby on Rails

[英]NameError (uninitialized constant ShopsController::ShopService - Ruby on Rails

我收到這個錯誤,不知道為什么。

NameError (uninitialized constant ShopsController::ShopService

我的控制器名稱是ShopsController我已經創建了一個服務/app/services/shop_service.rb服務內部的類的名稱是ShopService我在控制器操作中使用它的方式如下:

flag = ShopService.new.save_categories(@shop, params[:category])

服務代碼寫在下面

class ShopService  
  def initialize(shop = nil, services = nil); end
  def save_categories(shop, services)
    debugger
    flag = true
    services.drop(1).each do |service|
      category = Category.new(service: service, shop_id: shop.id)
      flag = false unless category.save
    end
    flag
  end
end

嘗試像這樣調用服務: flag = ::ShopService.new.save_categories(@shop, params[:category])在控制器上,這應該可以工作

編輯:

另外,請檢查您是否正在config.autoload_paths上的config/application.rb中加載服務路徑

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM