一站式报告和分析生成和电池计算包括在内
django-slick-reporting的Python项目详细描述
Django Slick报道
一站式报告引擎包括电池。在
特点
- 在少数代码行中轻松创建简单、分组、时间序列和交叉表报表。在
- 轻松创建自定义计算,它将与上述报表类型集成
- 优化速度。在
- 包括电池!图表.js, 数据表.net&启动窗体(amp;a)。在
用法
因此,您有一个包含数据的模型,我们将其称为mysaleitems
您可以简单地使用这样的代码
^{pr2}$为了得到这样的东西
你可以做一个每月的时间序列:
# in views.pyfromslick_reporting.viewsimportSlickReportViewfrom.modelsimportMySalesItemsclassMonthlyProductSales(SlickReportView):report_model=MySalesItemsdate_field='date_placed'group_by='product'columns=['name','sku']# Analogy for time seriestime_series_pattern='monthly'time_series_columns=[SlickReportField.create(Sum,'quantity',name='sum__quantity')]
这将返回一个如下所示的表:
Product Name | SKU | Total Quantity in Jan 20 | Total Quantity in Feb 20 | Total Quantity in … | Total Quantity in December 20 |
Product 1 | <from product model> | 10 | 15 | … | 14 |
Product 2 | <from product model> | 11 | 12 | … | 12 |
Product 3 | <from product model> | 17 | 12 | … | 17 |
此示例代码假定“MySalesItems”模型包含字段“product”作为外键,“quantity”作为数字,以及“date_placed”作为日期字段。它还假设您的“Product”模型有一个SKU字段。。改变这些来更好地适应你的结构。
–
处于低水平
您可以使用与SlickReportView相同的语法与ReportGenerator进行交互。在
fromslick_reporting.generatorimportReportGeneratorfrom.modelsimportMySalesModelreport=ReportGenerator(report_model=MySalesModel,group_by='product',columns=['title','__total__'])report.get_report_data()#-> [{'title':'Product 1', '__total__: 56}, {'title':'Product 2', '__total__: 43}, ]
这只是一个划痕,更多信息请访问文档
文档
前方道路
这个项目很年轻,需要你的支持。在
应添加的一些想法/特性
- 支持其他后端,如SQL炼金术和熊猫
- 支持按非外键字段分组
- 同时支持时间序列和交叉表
运行测试
创建一个虚拟环境(可能使用virtual slick_reports_test),激活它;然后
$ git clone git+git@github.com:ra-systems/django-slick-reporting.git $cd tests $ python -m pip install -e .. $ python runtests.py # Or for Coverage report $ coverage run --include=../* runtests.py [-k]$ coverage html
交叉引用
如果你喜欢这个套餐,你很可能也喜欢这些套餐!在
Django Tabular Permissions在可翻译且易于自定义的HTML表中显示Django权限。在
Django Ra ERP Framework轻松构建业务解决方案的框架。在
如果您觉得这个项目有用或有希望,您可以通过github来支持我们⭐ 在
- 项目
标签: