[英]Building a django queryset over foreign key and onetoone
我有一些與User相關的模型(在不同的apps / models.py文件中):
class Profile(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL, null=False)
...
class CourseStudent(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL)
semester = models.ForeignKey(Semester)
...
我正在嘗試獲取本學期至少有一門課程的所有配置文件的查詢集。
如何生成個人檔案的查詢集,其中profile.user
至少具有一個CourseStudent
實例,並對其進行過濾以使coursestudent.semester=current_semester
?
由於一個學生本學期可能有多門課程,因此也需要刪除重復項(僅在查詢集中具有唯一配置文件)
編輯:我正在使用postgresql,並試圖弄清楚是否需要使用帶有參數的distinct 。
未經測試。 也許你應該嘗試
class Profile(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL, null=False)
...
class CourseStudent(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, related_name="course_student")
semester = models.ForeignKey(Semester)
Profile.objects.filter("what_you_want").exclude(user__courser_student=None).distinct()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.