Django ManyToManyField 关系

发布于 2024-12-14 01:23:56 字数 258 浏览 0 评论 0原文

我有以下 Django 模型:

class opetest(models.Model):
    name = models.CharField(max_length=200)
    people = models.ManyToManyField(User, blank=True)

此 m2m 关系可在 User 对象上作为“opetest_set”使用。 如何在 django admin“用户编辑页面”中编辑此 m2m 关系?

I have the following Django model:

class opetest(models.Model):
    name = models.CharField(max_length=200)
    people = models.ManyToManyField(User, blank=True)

This m2m relationship is available on User object as 'opetest_set'.
How can I make available to edit this m2m relationship in django admin 'User edit page'?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

看轻我的陪伴 2024-12-21 01:23:56

要在 Django 管理中编辑 m2m,请使用 InlineModelAdmin。为了使用您自己的 UserAdmin,您应该首先取消注册 User,如下所示:

admin.site.unregister(User)
admin.site.register(User, UserAdmin)

要从 User 访问 opetest实例:

class opetest(models.Model):
    name = models.CharField(max_length=200)
    people = models.ManyToManyField(User, blank=True, related_name='opetests')

然后user.opetests.all()

To edit m2m in Django admin use InlineModelAdmin. In order to use your own UserAdmin you should unregister User first, like this:

admin.site.unregister(User)
admin.site.register(User, UserAdmin)

To make opetest accessible from User instance:

class opetest(models.Model):
    name = models.CharField(max_length=200)
    people = models.ManyToManyField(User, blank=True, related_name='opetests')

Then user.opetests.all()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文