Django как заставить пользователя отобразить определенный объект

Я изучаю django и пытаюсь отобразить все элементы от определенного пользователя, который является 2003-111

itemid      sy      sem  resolve_by
book    2021-2022    2    2003-111
table   2021-2022    1    2012-455

вот мой models.py Я использую customuser для использования электронной почты в качестве аутентификации вместо имени пользователя и заменяю свой id на userid(character)

class ClearanceCustomuser(models.Model):
password = models.CharField(max_length=128)
last_login = models.DateTimeField(blank=True, null=True)
is_superuser = models.BooleanField()
userid = models.CharField(primary_key=True, max_length=9)
email = models.CharField(unique=True, max_length=254)
is_staff = models.BooleanField()
is_active = models.BooleanField()
date_joined = models.DateTimeField()

class Meta:
    managed = False
    db_table = 'clearance_customuser'

class ClearanceItem(models.Model):
itemid = models.CharField(primary_key=True, max_length=20)
sem = models.CharField(max_length=1, blank=True, null=True)
sy = models.CharField(max_length=9, blank=True, null=True)
resolve_by = models.ForeignKey('ClearanceCustomuser', models.DO_NOTHING, 
db_column='resolve_by', blank=True, null=True)

class Meta:
    managed = False
    db_table = 'clearance_item'

пока это мой views.py

def index(request):
context = {}
context['items'] = ClearanceItem.objects.all()
return render(request, 'clearance/index.html', context)

, который отображает все элементы. Я думал о чем-то вроде этого

select b.cl_itemid,b.sem,b.sy,b.resolve_by
from curriculum.clearance_customuser a
INNER JOIN curriculum.clearance_item b ON a.userid = b.resolve_by
where resolve_by = '2003-221'

если 2003-111 - это поле userid в ClearanceCustomuser, то вы поступаете следующим образом:

def index(request):
context = {}
context['items'] = ClearanceItem.objects.filter(resolve_by__userid='2003-111')
return render(request, 'clearance/index.html', context)
Вернуться на верх