其他分享
首页 > 其他分享> > 如何在django admin中对自己的字段进行过滤?

如何在django admin中对自己的字段进行过滤?

作者:互联网

我添加了一个布尔型字段,它是从这样的时间计算出来的:

def is_active(self):
    if self.inactive_to and self.available_until:
        if datetime.date.today()>=self.inactive_to and datetime.date.today()<=self.available_until:
            return True
        else:
            return False
    elif self.inactive_to:
        if datetime.date.today()>=self.inactive_to:
            return True
        else:
            return False
    elif self.available_until:
        if datetime.date.today()<=self.available_until:
            return True
        else:
            return False
    else:
        return True
is_active.short_description = 'Available'
is_active.boolean = True

但是,如果我尝试将其添加到“ list_filter”,则会收到错误消息““ RealtyAdmin.list_filter [0]”是指“ is_active”,而不是“字段”.

我可以避免这种情况,还是可以添加将自动计算的模型fild?

解决方法:

admin不是从django.db.models.fields子类化的字段.

这就是“ is_active”,它不引用字段.”说.

标签:django-admin,python,django,django-models
来源: https://codeday.me/bug/20191030/1968457.html