2015-06-06 42 views
0

我有一個字段爲is_deleted的模型。我定義了一個自定義管理器。在Django中排除具有`is_deleted = True`的對象

我可以確定我總是排除具有is_deleted = True的對象嗎?

我在想我是否可以在models.Manager中直接覆蓋__init__()或其他東西,而不是排除我的自定義管理器中定義的所有功能。

回答

1

你總是可以覆蓋默認對象管理器默認情況下,排除記錄:

class DeletedManager(models.Manager): 
    def get_queryset(self): 
     return super(DeletedManager, self).get_queryset().filter(is_deleted=False) 


class YourModel(models.Model): 
    . . . 

    objects = DeletedManager() 
相關問題