Commit 5db399c9 by benjaoming

Issue #67 - left joins caused by m2m fields sometimes result in duplicate rows, applying distinct()

parent 08509150
......@@ -54,10 +54,11 @@ class ArticleFkQuerySetMixin():
if user.is_anonymous():
q = self.filter(article__other_read=True)
else:
# https://github.com/benjaoming/django-wiki/issues/67
q = self.filter(Q(article__other_read=True) |
Q(article__owner=user) |
(Q(article__group__user=user) & Q(article__group_read=True))
)
).distinct()
return q
def can_write(self, user):
......@@ -68,10 +69,11 @@ class ArticleFkQuerySetMixin():
if user.is_anonymous():
q = self.filter(article__other_write=True)
else:
# https://github.com/benjaoming/django-wiki/issues/67
q = self.filter(Q(article__other_write=True) |
Q(article__owner=user) |
(Q(article__group__user=user) & Q(article__group_write=True))
)
).distinct()
return q
def active(self):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment