ruby-on-rails - 如何创建一个样式正确且使用 Haml 和 Wicked-pdf 的 pdf_from_string 创建的 pdf
问题描述
我正在尝试使用我的应用程序中的 Haml 文件制作的 QRcode 制作 pdf。我的应用程序在 ruby on rails 和 uses 上ActiveStorage
,并且 QRcode 是用rqrcode
.
首先,我尝试制作controller's instance
and view's instance
。然后我创建了一个 pdfWickedPdf.new.pdf_from_string
并Haml file
加载了它,view
这是我之前创建的一个实例。
pdf 已创建,但其中的样式Haml file
不起作用。
view
它是否缺少扩展 the或其他问题所需的任何帮助程序?
这是一个Haml
代码。pdf 应该与此代码一起创建。
%div.content
%div.block.block-rounded.block-bordered.block-fx-shadow.justify-content-center
%div.block-header
%h3.block-title= I18n.t('word.qrcode')
%div.block-content
= show_qr(@remote_interview_url_with_iid)
show_qr
成功返回 QRCode svg。
这是创建实例的代码,pdf;并附加到active storage
.
def attach_pdf
controller = ActionController::Base.new
view = ActionView::Base.new(Rails.root.join('app', 'views'), {}, controller)
view.extend(ApplicationHelper)
pdf = WickedPdf.new.pdf_from_string(view.render(template: 'layouts/pdf.html.haml', encoding: 'UTF-8'))
self.pdf.attach(io: StringIO.new(pdf), filename: "pdf_#{self.iid}.pdf", content_type: 'application/pdf')
end
这是链接到 pdf 页面的代码。
= link_to interview.pdf_url do
%button.btn.btn-outline-primary.font-w600
= I18n.t('word.show_qrcode')
pdf_url
成功返回附加的 pdf 的 url。
我想知道如何让view instance
加载Haml
代码正确。
解决方案
推荐阅读
- angular - 如何从返回 observable 的函数订阅 observable?
- nginx - 将 Apache 重写规则 (fb_comment_id=) 转换为 NGINX 重写规则
- swift - [[Element].Element] 在 Swift 的 == 运算符重载中是什么意思?
- deployment - 通过部署 ERC20 代币 sol 发出警告,
- r - 通过 Outlook 2016 在 R 中发送电子邮件
- docker - 如何在 Kubernetes 中共享每个容器的卷?
- php - 导入频道条目的craftcms 3插件
- groovy - 无法在 null 对象上调用方法 replace(),但存在字符串
- dropbox - 在铬浏览器中登录 Dropbox 帐户在生成访问令牌时返回空白 URL
- node.js - 没有任何窗口的nodejs服务器对Office365 Outlook日历的身份验证