查看从HTMLtemplate创建PDF的mixin和模板过滤器。

btc-weasy-pdf的Python项目详细描述


查看mixin和模板过滤器,以便从HTML模板创建PDF。在

详细文档在“docs”目录中。在

快速入门

  1. 将“weasy_pdf”添加到已安装的应用程序设置中,如下所示:

    INSTALLED_APPS = (
        ...
        'weasy_pdf',
    )
    
  2. 帮助函数:安全性\u get_attribute()安全性\u parse_dict()format_date()(请参见实用工具.py)在

  3. 创建数据对象。使用safety_get_attribute()函数时,不要忘记连接相关表 (预取“相关”,选择“相关”):

    ^{pr2}$ 在
  4. 准备PDF模板。使用内置模板筛选器:解析

    <!doctype html>
    <html lang="en">
        <head>
            <meta charset="utf-8">
    
            {% load static %}
            {% load weasy_pdf %}
    
            <link rel="stylesheet" href="{% static '/styles/pdf.css' %}">
    
            <title>Title</title>
            <meta name="description" content="Description">
            <meta name="author" content="Author">
    
        </head>
        <body>
            <span>{{ data_object.first_name }}</span>
            ...
        </body>
    </html>
    
    <!-- Filters usage:
    
    {% for i in 8|times %}
        <td colspan="2"></td>
    {% endfor %}
    
    <td colspan="5">{{ data_object|parse_dict:'0__NAME' }}</td>
     -->
    
  5. 准备视图:

    class PDFView(WeasyPDFViewMixin):
    
        template_name = 'pdf.html'
        file_name = 'my_pdf.pdf'
    
        def get_object(self) -> Any:
            passport = get_object_or_404(Passport, pk=self.kwargs.get('pk'))
            return PDFDataObject(passport)
    

示例

https://user-images.githubusercontent.com/33987296/74111631-3e981f80-4ba7-11ea-874f-9509ba101c2d.png

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
javascript{“错误”:[“无效图像URL”]}与鸟舍集成   mysql Java语句。executeUpdate(sql)在executeQuery(sql)工作时不工作   在java中反复编辑object/arrayList   java在创建子类实例时是否也创建了超类实例?   如果运行一定次数,java是否仍要生成else?   java gradle eclipse依赖项,跳过testCompile/ProviderRuntime等   java如何用Dozer实例化子类?   java如何在docker容器中高效地构建maven项目?   lambda我想在这个块中转换成java 8流?   java本地广播管理器使用主活动未接收到的警报   更新产品数量时发生java异常(自定义属性)   java在每次迭代后删除2d数组的列和行   java如何在一个片段中存储数据以在另一个片段中获取数据?   java将默认公共构造函数添加到生成的生成器内部类