【问题标题】:access current_page? in ApplicationJob访问 current_page?在 ApplicationJob
【发布时间】:2016-11-04 20:30:14
【问题描述】:

我可以访问ApplicationJob 中的current_page? 方法吗?

我尝试使用它,但这项工作不再起作用了。

def perform(message)   
  if current_page?(root_path)
    x = 1
  end
end

【问题讨论】:

  • 作业没有页面,它们在后台处理,与请求/响应周期完全分离。
  • 哦,原来如此。所以我需要将变量传递给工作并在外部进行更改,对吗?

标签: ruby-on-rails ruby rails-activejob


【解决方案1】:

视图/控制器助手在 ApplicationJob 中不可用。

你必须将它作为参数传递:

def perform(message, path)   
  if path == Rails.application.routes.url_helpers.root_path
    x = 1
  end
end

附:我不确定您是否真的希望执行工作受到控制器路径的影响。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-21
    • 2015-03-22
    • 2012-08-23
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 2020-10-22
    • 2017-02-02
    相关资源
    最近更新 更多