使用 django-tables2 访问相关模型

chi*_*ill 5 django django-tables2

任何人都可以提供一个清晰的示例,说明如何使用 django-tables2 创建一个表对象,该对象从多个相关模型(即关系联接)中选择和呈现数据?该文档暗示这是可能的,但没有说明如何实现。

在正常的 django 中select_lated()函数工作得很好,但我不知道如何在 django-tables2 中实现它。我注意到关于类似主题还有其他未解答的问题

ust*_*tun 5

首先,select_related()不需要访问相关数据,这是出于性能原因。对于 django-tables2,您需要定义一个accessor. 一个例子在这里:https ://github.com/bradleyayers/django-tables2/issues/106

  • 1:N 而不是 N:1 怎么样?例如 - 如果我想连接表格单元格中的所有相关模型该怎么办?使用旧的“render_<column_name>(self, record)”方式这是可能的。我尝试将 `lambda record: ' '.join(...)` 传递给 `accessor=`,但它只给我 `None` (`--`)。我不想在模型中添加这样的方法,我知道它是有效的。我只是不认为它属于“模型层”,而是属于“表层”(`tables.py`)。 (3认同)