QuickReport Model Fields¶
date_field¶
DateTimeField of your model which is set automatically when new object is created.
report_set¶
List of reports of a model. For each report in a model, you should define a unique name and a Q objects.
- name: Unique report name of related model
- query: Django Q objects.
For example,
class Article(models.Model):
class Status:
DRAFT = 0
PUBLISHED = 1
CHOICES = [(DRAFT, "Draft"), (PUBLISHED, "Published")]
title = models.CharField(max_length=190)
body = models.TextField()
slug = models.SlugField(max_length=190)
status = models.IntegerField(choices=Status.CHOICES, default=Status.DRAFT)
author = models.ForeignKey(User)
created_at = models.DateTimeField(default=timezone.now)
class QuickReport():
date_field = "created_at"
report_set = (
{
"name": "Published",
"query": Q(status=1)
},
{
"name": "Drafts",
"query": Q(status=0)
},
)