Цикл for в шаблоне django, возвращающий пустые элементы списка

Я выполняю цикл по полю joined для моей модели Group и возвращаю список присоединившихся членов в моем шаблоне GroupDetail:

class Group(models.Model):
   leader = models.ForeignKey(User, on_delete=models.CASCADE)
   name = models.CharField(max_length=55)
   description = models.TextField()
   joined = models.ManyToManyField(User, blank=True)

Каждый член в цикле for относится к пользователю (или имени пользователя), который присоединился к группе:

<ul>  
  {% for member in joined_members %}
  <li>{{ member }}<li>
  {% endfor %}
</ul>

В группе четыре члена, и все члены возвращаются, однако четыре пустых элемента списка также возвращаются в таком виде (через chrome dev tools):

<ul style="display: block;">  
  <li>joe</li>
  <li></li>
  <li>johnny</li>
  <li></li>
  <li>ralph</li>
  <li>/li>
  <li>mike</li>
  <li></li>
</ul>

В этой конкретной группе всего четыре участника (Пользователи), поэтому я не понимаю, что происходит. Я предполагаю, что проблема связана с тем, как я передал данные в шаблон из моего представления:

class GroupDetail(DetailView):
    model = Group
    template_name = 'group_details.html'

    def get_context_data(self, *args, **kwargs):
        group = get_object_or_404(Group, id=self.kwargs['pk'])
        joined_members = group.joined.all()
        context = super(GroupDetail, self).get_context_data()
        context["joined_members"] = joined_members
        return context

Фактических ошибок нет, только эти четыре пустых элемента списка. Проблема в моем цикле for? Или в том, как я передаю свой контекст?

Я думаю, что вы понимаете через этот пример.

Мой models.py

class Post(models.Model):
    post_id = models.AutoField(primary_key=True)
    title = models.CharField(max_length=100)

Мой views.py

from django.shortcuts import render
from blog.models import Post

def index(request):
    post = Post.objects.all()
    context = {'post':post}
    return render(request, 'blog/bloghome.html', context)

Шаблон: bloghome.html

<div class="container">
    {% for post in post %}
        <div class="row">
            <h3 class="mb-0">{{post.title}}</h3>
        </div>
    {% endfor %}
</div>

надеюсь, вы поймете

изменяю свой список на:

<ul>  
  {% for member in group.joined.all %}
  <li>{{ member }}<li>
  {% endfor %}
</ul>

Решил проблему для меня. Я также смог удалить строки, передающие joined_members, но я не уверен, как именно это решило мою проблему. Но это помогло.

Вернуться на верх