这个问题的Part 1分别提问和回答。在
我有一个Report
和一个ReportTemplate
。在
+----+----------+---------------+-------------+
| id | title | data | template_id |
+----+----------+---------------+-------------+
| 1 | report 1 | {data: [...]} | 1 |
+----+----------+---------------+-------------+
reports table
+----+-----------+---------------+------------+
| id | title | markup | css |
+----+-----------+---------------+------------+
| 1 | template1 | <doctype!>... | body {.... |
+----+-----------+---------------+------------+
templates table
报表属于报表模板。报表模板有许多报表。在
我对admin.py
中的报表有一个名为print_as_pdf
的自定义管理操作
这些是模型:
class ReportTemplate(models.Model):
title = models.CharField(max_length=50)
markup = models.TextField(default = 'markup here...')
styles = models.TextField(default = 'styles here...')
# __unicode__ on Python 2
# __str__ on Python 3
def __unicode__(self):
return self.title
class Report(models.Model):
title = models.CharField(max_length=50)
commodity = models.CharField(max_length=10)
date = models.DateTimeField('date traded')
trade_period = models.CharField(max_length=10, default='open')
quantity_cutoff = models.IntegerField(default=0)
printed = models.BooleanField(default=0)
datetime_email_sent = models.DateTimeField('date email sent', blank=True, null=True)
data = models.TextField(default = 'data here...')
template = models.ForeignKey(ReportTemplate)
我想做的是:
markup
字段值data
字段值放入1中的markup
值,该值是用jinja2标记编写的我被困在第二步。在
由于我检索到的标记是字符串格式的,我如何使用现有数据运行它?在
从Jinja 2 documentation调整,可以简单到
如果要将输出存储到另一个变量中
^{pr2}$前提是模板希望以
report
模板参数的形式获取整个报表。相关问题 更多 >
编程相关推荐