0
我已经在控制器中定义的方法是这样的:缺少模板动作错误
def self.dailymail
.... #fill data from db
ac = ActionController::Base.new()
kit = PDFKit.new(ac.render_to_string(:action => "formatinhtml.html.erb",:rawdata => data))
pdf = kit.to_pdf
... #send pdf in mail
end
formatinhtml是这样的:
def formatinhtml
@dailyrep = params[:rawdata]
respond_to do |format|
format.html # daily.html.erb
end
end
我必须使用self.dailymail,这样我可以调用它从模型&转而来自rufus调度器。
但是,我仍然得到错误,如:
scheduler caught exception:
Missing template action_controller/base/daily.html with {:locale=>[:en], :formats=>[:html, :text, :js, :css, :ics, :csv, :png, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :pdf, :zip, :xls], :handlers=>[:erb, :builder, :coffee]}. Searched in:
* "F:/DEVELOPMENT/TrackIt/app/views"
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-3.2.8/lib/action_view/path_set.rb:58:in `find'
C:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-3.2.8/lib/action_view/lookup_context.rb:109:in `find'...
那么,什么是我需要做什么?
更新:调试后,我发现动作formatinhtml
实际上没有被获取调用;我已经定义neccessary路线。
模板动作错误通常意味着你有问题 – Richlewis
动作没有相应的看法,但我有看法daily.html.erb – usercr