Selesai: tambahkan banyak kejadian pada medan berkaitan manytoamny django%5D

Masalah utama yang berkaitan dengan menambahkan banyak kejadian pada medan yang berkaitan ialah ia boleh menyebabkan isu prestasi. Ini kerana pangkalan data perlu menjejaki semua kejadian, dan ini boleh membawa kepada prestasi yang lebih perlahan.

%5B%5D=1&django%5D%5B%5D=2&django%5D%5B%5D=3

I have a model with a many to many relationship:
<code>class MyModel(models.Model):
    related_field = models.ManyToManyField(RelatedModel)
</code>
In the admin interface, I can add multiple instances of <code>RelatedModel</code> to <code>related_field</code>.  How can I do this in code?  The following doesn't work:
<code>mymodel = MyModel()
mymodel.related_field = [1, 2, 3] # doesn't work!  only adds 1 instance of RelatedModel to related_field.  
mymodel.save() # only saves one instance of RelatedModel in related_field!  
</code>


A:

    mymodel = MyModel()     mymodel.save()     mymodel.related_field = [1, 2, 3]     mymodel.save() 

Hubungan banyak-ke-banyak

Perhubungan banyak-ke-banyak ialah jenis perhubungan antara dua entiti di mana setiap entiti boleh mempunyai berbilang perhubungan dengan yang lain. Sebagai contoh, seseorang boleh mempunyai ramai kawan, dan rakan boleh mempunyai ramai orang yang berkawan dengannya. Dalam Django, perhubungan banyak-ke-banyak diwakili oleh contoh model yang mempunyai dua medan: satu untuk entiti pertama dan satu untuk entiti kedua.

Cara menambah berbilang objek pada hubungan ManyToMany

Untuk menambah berbilang objek pada hubungan ManyToMany dalam Django, anda boleh menggunakan kaedah add() pada objek many_to_many. Sebagai contoh, untuk menambah catatan blog dan pengarang pada hubungan blog post many_to_many dalam Django, anda akan menggunakan kod berikut:

blog.add(BlogPost.objects.create(title='Menambah Berbilang Objek pada Hubungan ManyToMany', content=content)) author = Author.objects.create(name='John Doe')

Anda juga boleh menggunakan kaedah join() pada objek many_to_many untuk menggabungkan objek ke dalam set hasil tunggal:

blog.join(author)

Related posts:

Tinggalkan komen