2
作成したサービスからこのヘルパーメソッドを呼び出すことができません。彼らは、次のようになります。サービスでヘルパーメソッドを呼び出す
# app/services/fulfillment_order.rb
class FulfillmentOrder
def create_order_user_fulfilled
shop = Shop.find_by(shopify_domain: @domain)
shop_token = shop.shopify_token
ApplicationController.helpers.activate_shopify_session_with_id(@domain, shop_token)
end
end
私はこのエラーに
NoMethodError (undefined method activate_shopify_session_with_id
を取得し、それを行うときは、私もまっすぐヘルパーメソッドを呼び出そうとしました:
# app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
helper_method :activate_session_with_id
def activate_session_with_id(domain, token)
#do some stuff
end
end
私のサービスは次のようになりますこのように:
activate_shopify_session_with_id(@domain, shop_token)
N oいずれにしても運がいい。私はどこに迷いましたか?コントローラの外のコントローラのメソッドを呼び出すの
[OK]を、おかげで、私はこの方法のためのモジュールを作成した場合、私はちょうどサービスにおけるモジュールを含むと呼ぶだろうメソッドは必要に応じて?はい? – ToddT
@ToddTea、あなたはこのメソッドを使用するどのクラスにもインクルードします:) –