i want build table shows statistics baseball games. have model set represent 1 baseball game.
class baseball(models.model): gametime = models.datetimefield() vteam = models.charfield(max_length=255) vpitcher = models.charfield(max_length=255) hteam = models.charfield(max_length=255) hpitcher = models.charfield(max_length=255)
there other fields well, sufficient explain i'm trying do.
i'm using django-tables2 render tables. defined table class
class baseballtable(tables.table): class meta: model = models.baseball
and view
class home(singletableview): model = models.baseball table_class = tables.baseballtable
but default behavior not want. tables showing 1 row per entry in database.
gametime vteam vpitcher hteam hpitcher date1 vteam1 vpitcher1 hteam1 hpitcher1 date2 vteam2 vpitcher2 hteam2 hpitcher2
instead want rows of table not mimic database model directly, alternate rows follows 1st , 3rd row pull same place 2nd , 4th row different.
gametime team pitcher date1 vteam1 vpitcher1 <blank> hteam1 hpitcher1 date2 vteam2 vpitcher2 <blank> hteam2 hpitcher2
does know if django-tables2 can or if need write own tables?
i believe have reasonable question.
first of all, reocmmend using normal table , not modeltable since need override of columns after all.
different kinds of data in rows not django-tables2 supports out of box documentation doesn't that. however, there many methods can use achieve want.
one way arrange data pass table in such way 1 row contain date1 - vteam1 - vpitcher1 , next row contain blank - hteam1 - hpitcher1. create new list table data , put in records original query data. must carefull sorting if allow solution.
another easier way create queries return date1, vteam<br/>hteam1, vpitcher1<br/>hpicher1. when render vteam1 , hteam1 in different rows ! because can't test right now, if not seem work <br> not safe should output value enclosed in mark_safe.
to override render_row team , pitcher , return mark_safe(value) (or create new class tworowscolumn print value - may create small html table contain 2 rows hteam , vteam , printed in cell hteam/vteam). here sorting easier won't able sort hteam or hpitcher.
there other ways - instance subclassing modeltable want don't recommend since requirement specific , wouldn't reused anywhere else.
Comments
Post a Comment