簡體   English   中英

Django是否為查詢集中的每個項目添加到多對多字段?

[英]Django add into many-to-many field for each item in a queryset?

假設我有以下模型:

class User(models.Model):
    blogs = model.ManyToManyField(Blog)

向多個用戶的字段添加博客的最佳方法是什么,例如,我想向所有用戶添加名為Blog的Blog實例(即User.object.all() )。 我是否必須逐個迭代每個結果,或者有一種方法可以一次完成所有操作?

謝謝。

您可以在通過表上執行bulk_create 例如:

blog = Blog.objects.get(…)
users = User.object.all()

User.blogs.through.objects.bulk_create(
    [User.blogs.through(user_id=user.pk, blog_id=blog.pk) for user in users]
)

這將執行一個數據庫查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM