Reputation: 57
Good day guys, im new to django im having in many to many relationship display in template
How can display this into a normal list..
from . QuerySet User: webadmin, User: kim, User: sem, User: quinito, User: user1
to. webadmin kim sem quinito user1
Here's my code
class ListOfUser(models.Model):
users = models.ManyToManyField(User, verbose_name='List of User')
def listofusers(request):
userlist = ListOfUser.objects.get(id=1)
form = ListofUserForms()
context = {
'form': form,
'userlist': userlist
}
return render(request, 'listofusers.html', context)
<p>{{userlist.users.all}}<p>
Upvotes: 0
Views: 114
Reputation: 2018
You also make a function in your models.py and call that function in template.
Models.py
def display_users(self):
return ', '.join([user.username for user in self.users.all()])
template
<p>
{{ userlist.display_users }}
</p>
Or you can directly do this in template like
<p>
{% for user in userlist %}
<p>{{ user.users.all|join:", " }}</p>
{% endfor % }
</p>
Upvotes: 2
Reputation: 4630
Try:
<p>
{% for user in userlist.users.all %}
{{ user }}
{% endfor %}
</p>
Upvotes: 1