Ruby on rails rails 5 api模式下带有“helper_method”的helpers定义
编写Rails应用程序时,我过去在视图中没有任何实例变量,而是在控制器上定义Ruby on rails rails 5 api模式下带有“helper_method”的helpers定义,ruby-on-rails,ruby-on-rails-5,Ruby On Rails,Ruby On Rails 5,编写Rails应用程序时,我过去在视图中没有任何实例变量,而是在控制器上定义helper\u方法s。控制器和视图将以相同的方式使用这些方法。这使我的代码变得干净。现在有了Rails 5中的api模式,我不能再这样做了,没有helper\u方法了。在视图中使用变量是我最讨厌的事情之一 比如说 class ProductsController < ActionController::API helper_method :products, :current_user privat
helper\u方法
s。控制器和视图将以相同的方式使用这些方法。这使我的代码变得干净。现在有了Rails 5中的api
模式,我不能再这样做了,没有helper\u方法了。在视图中使用变量是我最讨厌的事情之一
比如说
class ProductsController < ActionController::API
helper_method :products, :current_user
private
def products
@products ||= current_user.products
end
def current_user
@current_user ||= User.find(session[:user_id])
end
end
我没有对此进行测试,但您可以尝试在helper\u方法之前在控制器中添加AbstractController::Helpers
模块
包括AbstractController::Helpers
helper\u方法的源代码
我还没有测试过,但是您可以尝试在helper\u方法
之前在控制器中添加AbstractController::Helpers
模块
包括AbstractController::Helpers
helper\u方法的源代码
json.products products do |product|
json.name product.name
json.price product.price
# and so on
end