Hay İlişkiler hakkında bir sorum var.django ManyToMany yardımı ile
Kullanıcıların Arkadaşlık yapmasını istiyorum. Yani bir Kullanıcı başka bir Kullanıcı ile bir arkadaş olabilir. Bir Dostluk tablosu aracılığıyla ManyToManyField'ı kullanmam gerekeceğini farz ediyorum. Ama işe yaramayacağım. Herhangi bir fikir?
İşte benim modelleri.
class User(models.Model):
username = models.CharField(max_length=999)
password = models.CharField(max_length=999)
created_on = models.DateField(auto_now = False, auto_now_add = True)
updated_on = models.DateField(auto_now = True, auto_now_add = False)
friends = models.ManyToManyField('self')
pendingFriends = models.ManyToManyField('self', through='PendingFriendship', symmetrical=False, related_name='friend_requested')
class PendingFriendship(models.Model):
user = models.ForeignKey('User', related_name='user')
requested_friend = models.ForeignKey('User', related_name='requested_friend')
created_on = models.DateField(auto_now = False, auto_now_add = True)
updated_on = models.DateField(auto_now = True, auto_now_add = False)
Teşekkür
Örneği, değiştirdiğinizle güncelledim. Ancak hala verileri tutmak için ekstra tabloya ihtiyacım var. – dotty
@dotty: Cevabımı güncelledim. –
hmm, modelimi güncelledim, doğrulama geçer iyi. Ive birkaç Kullanıcı ekledi. ve kullanıcı A modelinde bir BekleyenFriendship nesnesi oluşturdu.Bu arkadaşlığın güzelliğini ekler, ancak kullanıcı b'nin nesnesi arkadaşlığın öteki tarafını alamaz ('simetrik' değer yanlış olduğundan dolayı). İlişkinin de simetrik olmasını istiyorum. herhangi bir fikir? – dotty