Django ORM - objects.filter() vs. objects.all().filter() - which one is preferred?

前端 未结 3 1029
不知归路
不知归路 2020-12-28 11:49

Very often I see constructs like

MyModel.objects.all().filter(...)

which will return a QuerySet of the default Mananger. At first al

3条回答
  •  无人及你
    2020-12-28 12:47

    1. MyModel.objects returns the manager instance. all() return get_query_set(). I think all is there for when you need all objects.
    2. I prefer MyModel.objects.filter() cause the other is just one more method call, and I don't need all objects if I do filter :)
    3. It depends on the purpose. But if they override a base method of the manager, they return the same result format (eg. a QuerySet)

提交回复
热议问题