【问题标题】:user.groups.add(group) or group.user_set.add(user), Which is better and why ? or difference between themuser.groups.add(group) 或 group.user_set.add(user),哪个更好,为什么?或它们之间的区别
【发布时间】:2017-03-31 01:48:55
【问题描述】:

我正在尝试扩展 django.contrib.auth 并将用户添加到组中,这可以通过两种方式完成。我只是想知道为什么会这样,两者相比有什么优势。

【问题讨论】:

    标签: django django-models django-authentication


    【解决方案1】:

    他们做同样的事情。

    多对多关系由一个中间表和两个模型的外键组成。 user.groups.add(group) 将在该表中创建一个条目,其中外键指向 usergroup 实例。 group.user_set.add(user) 也是如此。

    【讨论】:

    • 具体来说,这两种方法都会生成类似于INSERT INTO "auth_user_groups" ("user_id", "group_id") VALUES...的SQL。
    猜你喜欢
    • 1970-01-01
    • 2022-12-20
    • 2010-10-18
    • 1970-01-01
    • 2014-03-20
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    • 2021-08-10
    相关资源
    最近更新 更多