2012-11-27 73 views
1

我使用Postgresql模式设置了多租户Rails应用程序。Postgresql模式和延迟::作业

如何限制Delayed :: Job的db搜索路径?

这会工作:

initializers/dj_config.rb: 

Delayed::Job.class_eval do 
connection.schema_search_path = ["#{current_tenant}", "public"].join(",") 
end 

...但我需要一种方法在目前的租户,这似乎很难通过,因为DJ工人是不同的工艺,其中“current_tenant”被设置在一个。有任何想法吗?

回答

1

我有一个类似的问题,并最终创建自定义作业类与perform方法设置current_tenant。我只是通过current_tenant到构造函数中:

Delayed::Job.enqueue CustomJob.new(current_tenant) 
+0

我尝试它但它不适合我 – TayyabZahid