diff --git a/bookwyrm/models/group.py b/bookwyrm/models/group.py index a91c56cb..01fdbdd6 100644 --- a/bookwyrm/models/group.py +++ b/bookwyrm/models/group.py @@ -42,4 +42,11 @@ class GroupMember(models.Model): """Users who are members of a group""" group = models.ForeignKey("Group", on_delete=models.CASCADE) - user = models.ForeignKey("User", on_delete=models.CASCADE) \ No newline at end of file + user = models.ForeignKey("User", on_delete=models.CASCADE) + + class Meta: + constraints = [ + models.UniqueConstraint( + fields=["group", "user"], name="unique_member" + ) + ] \ No newline at end of file diff --git a/bookwyrm/templates/groups/members.html b/bookwyrm/templates/groups/members.html index b10cdd5f..55d7fd74 100644 --- a/bookwyrm/templates/groups/members.html +++ b/bookwyrm/templates/groups/members.html @@ -30,36 +30,37 @@ {% endblock %}
- {% blocktrans trimmed with mutuals=user.mutuals|intcomma count counter=user.mutuals %} + {% blocktrans trimmed with mutuals=member.mutuals|intcomma count counter=member.mutuals %} {{ mutuals }} follower you follow {% plural %} {{ mutuals }} followers you follow{% endblocktrans %}
- {% elif user.shared_books %} + {% elif member.shared_books %}- {% blocktrans trimmed with shared_books=user.shared_books|intcomma count counter=user.shared_books %} + {% blocktrans trimmed with shared_books=member.shared_books|intcomma count counter=member.shared_books %} {{ shared_books }} book on your shelves {% plural %} {{ shared_books }} books on your shelves {% endblocktrans %}
- {% elif request.user in user.following.all %} + {% elif request.user in member.following.all %}{% trans "Follows you" %}
{% endif %} -