繁体   English   中英

将对象数组传递给另一个模型调用 django

[英]Pass array of objects to another model call django

我正在尝试为用户选择所有类,然后加载所有对应的类对象。 这是我的 model.py 文件:

from django.db import models
from django.contrib.auth.models import User


class Class(models.Model):
    name = models.CharField(max_length=150)
    description = models.TextField()
    teacher = models.ForeignKey(User)

class UserClasses(models.Model):
    class_name = models.ForeignKey(Class)
    user = models.ForeignKey(User)

这是我打的电话:

def index(request):
    #grab all classes for a user
    users_classes = UserClasses.objects.filter(user=request.user)
    #pass the array of class objects and get their info
    classes = Class.objects.select_related(self=users_classes)

     context_dict = {}

     return render(request, 'dashboard/index.html', context_dict)

我怎样才能实现上述目标?

你可以做

users_classes = UserClasses.objects.filter(user=request.user)
classes = Class.objects.filter(class_name__in=users_classes)

现在classes对象包含用户所属的所有类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM