我有一个网站,用户可以在其中查看电影列表,并为他们创建评论.
用户应该能够看到所有电影的列表.此外,如果他们审查了电影,他们应该能够看到他们给出的分数.如果没有,则仅显示没有得分的电影.
他们根本不关心其他用户提供的分数.
考虑以下 models.py
from django.contrib.auth.models import User
from django.db import models
class Topic(models.Model):
name = models.TextField()
def __str__(self):
return self.name
class Record(models.Model):
user = models.ForeignKey(User)
topic = models.ForeignKey(Topic)
value = models.TextField()
class Meta:
unique_together = ("user", "topic")
Run Code Online (Sandbox Code Playgroud)
我本质上想要的是这个
select * from bar_topic
left join (select topic_id as tid, value from bar_record where user_id = 1)
on tid = bar_topic.id
Run Code Online (Sandbox Code Playgroud)
考虑以下内容test.py:
from django.test import TestCase
from bar.models import *
from django.db.models import Q
class TestSuite(TestCase):
def setUp(self): …Run Code Online (Sandbox Code Playgroud)