cara mendapatkan hubungan timbal balik antar pengguna di bidang Django ManyToMany

Maaf saya menulis pertanyaan ini dari ponsel jadi belum bisa memberikan kode sebenarnya

Saya memiliki model hubungan dengan mengikuti banyak ke banyak dengan pengikut nama terkait

Saya ingin menulis fungsi manajer model yang mengembalikan semua hubungan timbal balik yaitu orang-orang yang saya ikuti yang kebetulan adalah pengikut saya


person Lewis Wedmore    schedule 01.11.2017    source sumber


Jawaban (1)


Katakanlah Anda memiliki model seperti ini:

class Profile(models.Model):
    following = models.ManyToManyField('Profile', related_name='followed_by')

Objek Profile tertentu p akan mengakses semua pengikutnya melalui p.following.all(). Itu akan mengakses semua profil yang mengikutinya melalui p.followed_by.all().

Dengan mengingat hal tersebut, Anda dapat mengakses semua profil p berikut yang mengikuti p dengan:

p.following.filter( id__in = p.followed_by.all() )
person souldeux    schedule 01.11.2017
comment
Terima kasih banyak _baru saja terlintas di benak saya, terima kasih lagi - person Lewis Wedmore; 01.11.2017