baobee
baobee

Reputation: 451

Django ManyToManyField relationship

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'?

Upvotes: 1

Views: 1115

Answers (1)

DrTyrsa
DrTyrsa

Reputation: 31951

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()

Upvotes: 1

Related Questions