Django: проверьте значение в поле ManyToMany в шаблоне

У меня есть следующая модель в моем приложении Django:

class Group(models.model):
    name=models.CharField(max_length=30)
    users=Models.ManyToManyField(User)

В моем шаблоне я хочу отображать каждую группу вместе с кнопкой под каждой. Если пользователь уже находится в группе, я хочу отобразить кнопку «Покинуть группу», а если он еще не находится в группе, я хочу отобразить кнопку «Присоединиться к группе».

Каков наиболее эффективный способ определить, входит ли текущий авторизованный пользователь в каждую группу? Я бы предпочел не запрашивать БД для каждой отображаемой группы, что, кажется, произошло бы, если бы я просто сделал следующее.

{% if user in group.users.all %}

Спасибо.

5
задан rolling stone 9 December 2011 в 06:53
поделиться