Sim*_*ays 9 python django model
可以在Django模型中设置默认过滤器吗?
就像是:
class MyModel(models.Model):
timestamp = models.DateTimeField(default=datetime.utcnow)
active = models.BooleanField(default=True)
class Meta:
ordering = ['-timestamp']
filtering = [active=True]
Run Code Online (Sandbox Code Playgroud)
Pav*_*sov 29
你必须覆盖经理:
class MyModelManager(models.Manager):
def get_queryset(self):
return super(MyModelManager, self).get_queryset().filter(active=True)
class MyModel(models.Model):
timestamp = models.DateTimeField(default=datetime.utcnow)
active = models.BooleanField(default=True)
objects = MyModelManager()
class Meta:
ordering = ['-timestamp']
Run Code Online (Sandbox Code Playgroud)
get_queryset是get_query_set的Django 1.6之前