我是 django 的初学者,

i am begginer in django ,

Q1-> 我不知道为什么 "GroupMember" 模型没有显示在管理面板中。 Q2-> 为什么“members = models.ManyToManyField(User,through="GroupMember")”字段也没有显示 管理面板

from django.conf import settings
from django.core.urlresolvers import reverse
from django.db import models
from django.utils.text import slugify
# from accounts.models import User

import misaka

from django.contrib.auth import get_user_model
User = get_user_model()


from django import template
register = template.Library()



class Group(models.Model):
    name = models.CharField(max_length=255, unique=True)
    slug = models.SlugField(allow_unicode=True, unique=True)
    description = models.TextField(blank=True, default='')
    description_html = models.TextField(editable=False, default='', blank=True)
    members = models.ManyToManyField(User,through="GroupMember")

    def __str__(self):
        return self.name

    def save(self, *args, **kwargs):
        self.slug = slugify(self.name)
        self.description_html = misaka.html(self.description)
        super().save(*args, **kwargs)

    def get_absolute_url(self):
        return reverse("groups:single", kwargs={"slug": self.slug})


    class Meta:
        ordering = ["name"]


class GroupMember(models.Model):
    group = models.ForeignKey(Group, related_name="memberships")
    user = models.ForeignKey(User,related_name='user_groups')

    def __str__(self):
        return self.user.username

    class Meta:
        unique_together = ("group", "user")

enter image description here

首先,您应该将您的应用程序添加到 settings.py 中的 INSTALLED_APPS:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
...
'your_app',
...
]

然后你必须像这样在 your_app/admin.py 中注册你的模型:

from django.contrib import admin
from .models import Group, GroupMember

admin.site.register(Group)
admin.site.register(GroupMember)