【发布时间】:2022-01-08 14:55:26
【问题描述】:
我有两个模型项目和用户。一个项目的团队是具有用户模型的多对多领域。
models.py
# Create your models here.
class Project(models.Model):
title = CharField(max_length=30)
description = TextField()
due_date = DateField()
team = ManyToManyField(settings.AUTH_USER_MODEL)
INACTIVE = 0
ACTIVE = 1
STATUS = (
(INACTIVE, ('Inactive')),
(ACTIVE, ('Active')),
)
active = models.IntegerField(default=1, choices=STATUS)
def __str__(self) -> str:
return f'{self.title}'
views.py
@login_required
def index(request):
user = request.user
tickets = Ticket.objects.filter(assigned_to=user)
ticket_count = len(tickets)
projects = Project.objects.filter(team__in = user)
project_count = len(projects)
context = {
'tickets':tickets,
'ticket_count':ticket_count,
'projects':projects,
'project_count':project_count,
}
return render(request, 'bugtracker_app/index.html', context)
我正在尝试使用查询集 API 返回当前登录用户已分配到的项目。但是我收到以下错误:
TypeError: 'User' object is not iterable
如何解决此错误并获取用户正在进行的项目的查询集?
【问题讨论】:
标签: django django-models django-queryset