-1
我有一個像波紋管的模型。django檢查模型表是否有對象
class User(BaseModel,DjangoUser):
uuid = models.CharField(max_length=100, blank=True)
realname = models.CharField(max_length=100, blank=True)
followers = models.ManyToManyField('self', through='FollowRelationship', symmetrical=False, related_name='followed_by')
def follow(self, person):
relationship, created = FollowRelationship.objects.get_or_create(from_person=self,to_person=person)
return created
def unfollow(self, person):
fs = FollowRelationship.objects.filter(from_person=self,to_person=person)
if fs is not None:
fs.delete()
return True
return False
class FollowRelationship(models.Model):
from_person = models.ForeignKey(User, related_name='from_user')
to_person = models.ForeignKey(User, related_name='to_user')
follow_time = models.DateTimeField(default=datetime.datetime.now)
如果我有兩個用途A和B,我使用A in B.followers.all()
,以檢查是否A被B之後。 這樣做是否好,如果B.followers有10000000個對象,是否是一個很好的方法來做到這一點?
另一個問題是,如果我在我的(android)應用程序中關注用戶,A in B.followers.all()
將在某個時間返回false並返回true。如果我重新啓動django服務器,它將立即成爲真正的問題是什麼?
是的,它在一些視圖 – mike