django-tables2:无法使用order_按对自定义列进行排序
我创建了一个新列(issue_number),它只表示表的“pk”,但在模型中检索一个对象:django-tables2:无法使用order_按对自定义列进行排序,django,django-tables2,Django,Django Tables2,我创建了一个新列(issue_number),它只表示表的“pk”,但在模型中检索一个对象: @property def issue_number(self): return self 当我想用该列对表进行排序时,问题就出现了。我得到了一个随机顺序,也许这是因为我不是通过整数而是通过对象得到了顺序 如果我将鼠标悬停在标题列上,我会得到=“?sort=issue\u number”,但我希望得到“?sort=id” 请尝试使用元组代替字符串作为order\u by: order_by=(
@property
def issue_number(self):
return self
当我想用该列对表进行排序时,问题就出现了。我得到了一个随机顺序,也许这是因为我不是通过整数而是通过对象得到了顺序
如果我将鼠标悬停在标题列上,我会得到=“?sort=issue\u number”,但我希望得到“?sort=id”
请尝试使用元组代替字符串作为
order\u by
:
order_by=('pk',)
如果未在字段中声明“id”,则使用order\u by=('id',)
或order\u by='id'
无效
因此,我建议您以以下方式添加该列:
id = tables.Column(visible=False)
然后将字段“id”添加到“fields”中。例如:
fields = ('id', 'title', 'description')
我希望它对某人有用。对不起,我没有其他建议。希望你能找出问题所在。
id = tables.Column(visible=False)
fields = ('id', 'title', 'description')