def render_table_db_queries(): render = lambda **kw: (Template('{% load django_tables2 %}{% render_table table %}') .render(Context(kw))) with database(): Person.objects.create(first_name="brad", last_name="ayers") Person.objects.create(first_name="stevie", last_name="armstrong") class PersonTable(tables.Table): class Meta: model = Person per_page = 1 with queries(count=2): # one query to check if there's anything to display: .count() # one query for page records: .all()[start:end] render(table=PersonTable(Person.objects.all())) with queries(count=2): # one query for pagination: .count() # one query for page records: .all()[start:end] request = build_request('/') table = PersonTable(Person.objects.all()) RequestConfig(request).configure(table) render(table=table, request=request)
def render_table_db_queries(): render = lambda **kw: ( Template('{% load django_tables2 %}{% render_table table %}').render( Context(kw))) with database(): Person.objects.create(first_name="brad", last_name="ayers") Person.objects.create(first_name="stevie", last_name="armstrong") class PersonTable(tables.Table): class Meta: model = Person per_page = 1 with queries(count=2): # one query to check if there's anything to display: .count() # one query for page records: .all()[start:end] render(table=PersonTable(Person.objects.all())) with queries(count=2): # one query for pagination: .count() # one query for page records: .all()[start:end] request = build_request('/') table = PersonTable(Person.objects.all()) RequestConfig(request).configure(table) render(table=table, request=request)
def assert_queries(): with queries(count=1): list(Thing.objects.all()) with queries(count=0): pass with queries() as qs: with queries(using="alternate") as others: list(Thing.objects.all()) assert len(qs) == 1 assert len(others) == 0
def as_html_db_queries(): with database(): class PersonTable(tables.Table): class Meta: model = Person with queries(count=1): PersonTable(Person.objects.all()).as_html()
def render_table_db_queries(): with database(): Person.objects.create(first_name="brad", last_name="ayers") Person.objects.create(first_name="stevie", last_name="armstrong") class PersonTable(tables.Table): class Meta: model = Person per_page = 1 with queries(count=2): # one query for pagination: .count() # one query for page records: .all()[start:end] request = build_request('/') table = PersonTable(Person.objects.all()) RequestConfig(request).configure(table) # render (Template('{% load django_tables2 %}{% render_table table %}') .render(Context({'table': table, 'request': request})))