10
我想了解有關Rails ActionController :: Metal控制器。我已閱讀它但不完全理解它。Rails ActionController :: Metal
它用於構建API,但我們也可以在沒有它的情況下構建API。
那麼它究竟做了什麼以及它有用多少?
任何人都可以請示例解釋它嗎?
我想了解有關Rails ActionController :: Metal控制器。我已閱讀它但不完全理解它。Rails ActionController :: Metal
它用於構建API,但我們也可以在沒有它的情況下構建API。
那麼它究竟做了什麼以及它有用多少?
任何人都可以請示例解釋它嗎?
ActionController :: Metal本質上是ActionController :: Base的精簡版本。它主要用於API,因爲它不包含通常帶有Rails控制器的模塊,因此可以提高性能(甚至達到40%,具體取決於使用案例https://gist.github.com/drogus/738168)。
鑑於它只包含最基本的控制器功能,因此您只能爲自己的類添加所需的功能。例如,一個可以加渲染,令牌身份驗證和篩選功能:
class ApiGenericController < ActionController::Metal
include ActionController::Rendering
include ActionController::Renderers::All
include ActionController::MimeResponds
include ActionController::ImplicitRender
include AbstractController::Callbacks
include ActionController::HttpAuthentication::Token::ControllerMethods
這基本上是一個快速的方法,以確保你讓你的計算資源的最佳利用。
謝謝,它幫助我解決這個問題:http://stackoverflow.com/questions/42138227/how-to-use-before-action-on-doorkeepertokencontroller/42139088#42139088與門衛! – Francois