我有一个奇怪的问题Django-tables2
。我创建了一个包含两列的简单表格 -timestamp
和description
.
问题是第一个对象QuerySet
没有在表中呈现。此行中复制的不是第一个对象,而是最后一个对象。
现在我用Action
对象填充这个表。
模型
class Action(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE,related_name='actions')
description = models.TextField()
timestamp = models.DateTimeField(auto_now_add=True)
def __unicode__(self):
return u"{} - {} {}".format(self.user, self.timestamp, self.description)
看法
@decorators.is_authenticated_or_homepage
def dashboard(request):
print Action.objects.filter(user=request.user)
recent_actions_table = RecentActionsTable(Action.objects.filter(user=request.user))
context = {'user': request.user,
'recent_actions_table':recent_actions_table}
return render(request, 'main_app/dashboard/index.html', context=context)
桌子
class RecentActionsTable(tables.Table):
class Meta:
model = Action
fields = ('id','timestamp','description')
attrs = {'id': 'id_recent_actions_table',
'class': 'table', }
如您所见,我在创建表之前打印了查询集:
<QuerySet [<Action: futilestudio - 2016-12-29 16:15:33.299000 New product created (6)>,
<Action: futilestudio - 2016-12-29 16:53:29.534000 Manual scan of product>,
<Action: futilestudio - 2016-12-29 17:05:38.215000 Manual scan of product>,
<Action: futilestudio - 2016-12-29 17:27:05.462000 New product created (7)>]>
第一个对象不在表中。相反,存在 ID 为 5 的重复对象。
你有什么想法有什么问题吗?