python - Django 对象和 openpyxl 单元格。如何设置单元格值,如 django 对象字段的值?
问题描述
我必须编写一段代码,从 django 数据集(几个模型)生成 xlsx 报告。报告的框架比通常的 x 行 y 列具有更困难的结构(一些单元格是统一的)。它应该是这样的:
所以我写了视图函数:
from cut.models import *
from django.http import HttpResponse
from openpyxl.workbook import Workbook
from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font
def get_report(request):
rent_test = Renters.objects.all
response = HttpResponse(
content_type='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
)
response['Content-Disposition'] = 'attachment; filename=FORM_1-IL.xlsx'.format()
workbook = Workbook()
worksheet = workbook.active
worksheet.title = 'A_REPORT'
worksheet.merge_cells('A2:A5')
#...
worksheet.merge_cells('M4:M5')
worksheet['A2'].value = 'name of forestry'
#...etc.
columns = [
'only_one_column'
]
row_num = 1
for col_num, column_title in enumerate(columns, 1):
cell = worksheet.cell(row=row_num, column=col_num)
cell.value = column_title
workbook.save(response)
return response
所以这一切都是可以理解和简单的。但是我如何使用 django 字段?我希望将它们转移到相对单元格(字段值而不是红色字体“字段值”
解决方案
推荐阅读
- javascript - 用于一对多聊天的 Mesibo Javascript 弹出窗口集成
- javascript - 动态导入前的条件检查()
- apache-kafka - Kafka Connect - 具有相同 Kafka 集群作为源的连接器?
- javascript - 如果是动态调用(v-bind:src),则不打印图像
- delphi - 递归复制目录并覆盖所有文件而无需用户确认
- reactjs - 根据 React-Select 中的条件恢复为默认的反应选择道具
- excel - Excel VBA IE 对象和使用下拉列表
- javascript - UnhandledPromiseRejectionWarning 在nodejs中出现类型错误
- domain-driven-design - DDD:使用领域事件来保证不变量的一致性是否正确?我有其他选择吗?
- reactjs - 如何在 reactJS 中正确创建可重用的 useLocation 函数