我正在使用Postgresql架构设置多租户Rails应用程序。
如何确定Delayed :: Job的数据库搜索路径范围?
这样可行:
initializers/dj_config.rb:
Delayed::Job.class_eval do
connection.schema_search_path = ["#{current_tenant}", "public"].join(",")
end
...但是我需要一种传递当前租户的方法,这似乎很难,因为DJ工作人员与设置“current_tenant”的工作人员不同。有什么想法吗?
答案 0 :(得分:1)
我遇到了类似的问题,最终创建了使用perform
方法设置current_tenant的自定义作业类。我只是将current_tenant传递给构造函数:
Delayed::Job.enqueue CustomJob.new(current_tenant)