2013-10-29 58 views
0

我一起使用sinatra和sidekiq。我试图从sidekiq worker中渲染一个erb模板,并得到一个未定义的方法'erb'。在我的脑海中,事情应该起作用,因为sidekiq作为我的sinatra应用程序的一个实例加载,所以它应该有erb方法。我在这里错过了什么?使用erb模板和sidekiq

class SomeWorker 
    include Sidekiq::Worker 

    def perform(id) 
    erb(:emailTemplate) 
    end 
end 

(我现在意识到SomeWorker类无关,跟西纳特拉等,当然它没有再培训局的方法。也许我只能打个电话出去帮助模块?在地方?ERB方法调用)

回答

0

,所以我想出1种溶液:

require 'erb' 
require 'tilt' 

class ForgotEmailWorker 
    include Sidekiq::Worker 

    def perform 
    template = tilt.new(__path_to_erb_file).render 
    end 
end