Ugo*_*lli 7 django django-models
我希望能够在 Django Admin (django.contrib.admin) 上反转多对多关系。
class Company(models.Model):
name = models.CharField(max_length=100)
status = models.BooleanField()
users = models.ManyToManyField(User, related_name='company')
Run Code Online (Sandbox Code Playgroud)
现在我可以通过 Django Admin 上的 Company 查看用户,但我无法通过 User 访问公司。
访问反向关系的正确方法是什么?
at1*_*t14 15
您必须在管理页面中使用内联。
在你的 admin.py
from __future__ import unicode_literals
from django.contrib.auth.admin import UserAdmin
from django.contrib import admin
from django.contrib.auth import get_user_model
from .models import Company
User = get_user_model()
class CompanyInline(admin.TabularInline):
model = Company.users.through
@admin.register(User)
class MyUserAdmin(UserAdmin):
inlines = [CompanyInline, ]
@admin.register(Company)
class CompanyAdmin(admin.ModelAdmin):
pass
Run Code Online (Sandbox Code Playgroud)
您可以在此处的文档中阅读有关此内容的更多信息
内联有多种可用选项(例如 - 堆叠/内联、折叠、额外、最小等),您可以在文档中阅读更多相关信息