モデルプロパティでテーブルをソートできません。 django-tables2
はどのフィールドを処理するのか分かっていますが、動作しません。モデルのプロパティ(アクセサセット)でテーブルをソートできません
これはテーブルです:
class Scan(models.Model):
occurence = models.ForeignKey('Occurence', related_name='scans')
datetime = models.DateTimeField()
price = models.DecimalField(max_digits=20,decimal_places=2,null=True,blank=True,verbose_name='Price')
valid = models.BooleanField(default=True,verbose_name='Valid')
def __unicode__(self):
return u'{} {} {} {}'.format(self.occurence, self.datetime, self.price, u'OK' if self.valid else 'NOK')
@property
def date(self):
return self.datetime.date()
@property
def time(self):
return self.datetime.time()
ビュー:
class ScansTable(tables.Table):
site = tables.columns.Column(accessor='occurence.site', verbose_name='Site')
url = tables.columns.TemplateColumn("""<a href="{{ record.occurence.url }}">{{ record.occurence.url|truncatechars:20 }}</a>""",
accessor='occurence.url', verbose_name='Url')
price = tables.columns.TemplateColumn(u"""{{ record.price }} €""")
date = tables.columns.Column(accessor='date',order_by='date')
time = tables.columns.Column(accessor='time',order_by='time')
class Meta:
model = Scan
fields = ('date', 'time', 'site', 'url', 'valid', 'price')
attrs = {'id': 'cans_table',
'class': 'table',}
これはスキャンモデルです
def scans(request):
...
scans = Scan.objects.filter(occurence__product=product)
scans_table = ScansTable(scans)
RequestConfig(request).configure(scans_table)
scans_table.paginate(page=request.GET.get('page', 1), per_page=50)
return render(request,"dashboard_app/scans.html",context={'scans_table':scans_table})
表Iにはない時に適切にrenderdされていますそれを並べ替える。
フィールドにキーワードu'timeを解決できません。たとえば、時間をクリックすると、次の結果が返されます。選択肢は以下のとおりです。問題がある場合、日時、 グループ、ID、出現、occurence_id、価格、有効な
あなたは知っていますか?
私は理解していない...製品がモデルであります複数のOccurenceオブジェクトを持つことができます。 –
これは、商品のタイプとは何ですか? –