¿Es posible agregar una condición adicional para unirse a la declaración creada por django ORM?condiciones adicionales en join en django
Lo que necesito en SQL es
'SELECT "post"."id", COUNT("watchlist"."id") FROM "post"
LEFT OUTER JOIN "watchlist"
ON ("post"."id" = "watchlist"."post_id" AND "watchlist"."user_id" = 1)
WHERE "post"."id" = 123 GROUP BY …
En Django mayoría de esto es
Post.objects.annotate(Count('watchinglist')).get(pk=123)
Pero ¿cómo se puede añadir que AND "watchlist"."user_id" = …
en condición de unión con el ORM de Django?
Al agregarlo al filtro no se pueden obtener objetos Post sin objetos asociados en la lista de seguimiento.
parece que hace acually lo mismo que el filtro(). P.ej. agregando un parámetro a DONDE, no a ENCENDIDO, y, por lo tanto, proporcionando resultado vacío si no hay un objeto de lista de observación. – HoverHell
Pero, en realidad, buena idea. Me perdí el parámetro 'extra' de Count. Parece que eso funciona. – HoverHell
... o tal vez no. 'extra' parece tener un propósito algo diferente. – HoverHell