Este é um bug conhecido no Django>=1.8 e Django <2.0. Foi corrigido no Django 2.0. Eu tive o mesmo problema e o trouxe para a lista de discussão django-users.
O que aconteceu é que o Django realizou algumas otimizações, principalmente baseadas no PostgreSQL. No PostgreSQL, você só precisa usar as colunas pk na cláusula GROUP BY, mas isso é apenas para tabelas. (A consulta é executada mais rapidamente se você fizer isso.) Você não pode ter um PK em uma visualização no PostgreSQL, por isso é um problema para nós, pois estamos usando modelos não gerenciados acoplados a visualizações no backend.
Referências:
- https://github.com/django/django/commit/daf2bd3efe53cbfc2379fd
- https://groups.google.com/ forum/#!topic/django-developers/lx3ZSq-W9X4
- https://groups.google.com/ d/msg/django-developers/lx3ZSq-W9X4/yh4I2CsoBwAJ
- https://code.djangoproject.com/ticket/28107