1

我正在为一个项目使用 django-tables-2。我有一个使用模型来显示数据的表,但我需要再添加一列来显示另一个表中的一些信息。我可以这样做吗?

4

2 回答 2

0

您是否尝试过以下操作?

# models.py
class Person(models.Model):
    " This is your regular model "
    first_name = models.CharField(max_length=200)
    last_name = models.CharField(max_length=200)
    user = models.ForeignKey("auth.User")
    dob = models.DateField()

class PersonTable(tables.Table):
   id = tables.Column(name="id") # just add a field here
   class Meta:
       model = Person
于 2013-09-05T08:06:09.117 回答
0

您可以通过使用与模型属性相同的名称来映射列,或者使用访问器属性。

我猜你的情况是:

class UsersTable(tables.Table):

    custom = Column(_("Custom"), accessor='id', orderable=False) # Any attr will do, dont mind it

    def render_custom(self, record):
        return services.get_some_info(record)

    class Meta:
        model = User
        fields = (b'username', )
于 2014-02-21T05:26:56.470 回答