簡體   English   中英

如何從Rails應用程序調用Rails可安裝引擎方法?

[英]How to call a Rails Mountable Engine method from a Rails application?

可安裝發動機控制器方法:

module ServiceApi
  module Api
    module V1
      class RequestorController < ApplicationController
        def get_details(query_parameters)
          #some code here
        end
      end
    end
  end
end

Rails app Controller從可安裝引擎調用get_details(params)方法

ServiceApi::Api::V1::RequestorController.new.get_details(params)

在我看來,你不是在尋找一個控制器動作,而是一個輔助方法 例如,控制器操作不接受參數。

如果您仍然希望它按照規定存在於控制器中,那很好,但是您可以將其提取到幫助程序並在您想要使用它的每個控制器中包含該幫助程序。

例如,

# [engine]/app/helpers/requestor_helper.rb

module ServiceApi::Api::V1::RequestorHelper
  def get_details(query_parameters)
    # code
  end
end

然后在你的控制器中

include ServiceApi::Api::V1::RequestorHelper

當你想要的是一個模塊時,不需要濫用課程。

暫無
暫無

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

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