我必须渲染一些模板并将 HTML 块发送到 SendGrid 以进行电子邮件替换。所以,不幸的是,我正在像这样的模型中进行一些渲染:
view = ActionView::Base.new(Rails.configuration.paths["app/views"].first)
view.render(:partial => template_name)
即使我添加了:
view.extend Rails.application.routes.url_helpers
view.extend ActionView::Helpers::UrlHelper
view.extend ApplicationHelper
除非我像下面这样明确定义模块,否则部分无法访问像 url_for 这样的 URL 助手:
Rails.application.routes.url_helpers.edit_user_url(user, :host => Rails.application.config.action_mailer.default_url_options[:host])
有没有更简洁的方法在从模型调用的模板中使用 URL Helper?