我在理解 after_save rails 回调时遇到问题。我的模型中有一个片段:
after_save :log_creation
private
def log_creation
logger.info "RECEIVED => #{ self.name } - #{ self.value } - #{ self.id }"
path_to_url = url_for({ :host => "localhost:8080", :action=>"show", :controller=>"testing", :format =>"pdf", :id => self })
logger.info path_to_url
file = open(path_to_url, "r").read
logger.info file
end
在开发日志中,我得到了前两个 logger.info 的预期信息。第三个我不明白,因为我收到 404 异常 (ActiveRecord::RecordNotFound)。
那么,我做错了什么?
PDF 生成工作正常(使用 PDFkit),如果我评论 after_save 行并尝试访问 URL 就可以了,但是当我尝试在 after_save 上访问它时,它无法正常工作,因为我没有预料到。
所有这些都是为了发送附有 PDF 的电子邮件(带有邮件程序)。它会下载PDF(通过受控)然后发送。