【发布时间】:2020-03-26 03:09:52
【问题描述】:
在我的 django 管理模型(配置文件)中,我看不到在 django 模型中声明的 StudentID 字段。 模型.py
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
StudentID = models.AutoField(primary_key=True, verbose_name='SID')
Branch = models.CharField(max_length=255, choices=Departments, default="CSE")
YearOfStudy = models.IntegerField(default=1)
ContactNumber = PhoneField(help_text='Contact phone number')
image = models.ImageField(default='default.jpeg', upload_to='profile_pics', blank=True)
parentsContactNumber = PhoneField(help_text="Parent's phone number", blank=True)
def __str__(self):
return f'{self.user.username} Profile'
【问题讨论】:
-
你的 ModelAdmin 在哪里?
-
注意:Django 管理员从管理员更改表单中排除自动 PK 字段(因为它们不可编辑)。如果要显示该值,则必须覆盖您的管理员 change_form 模板。
-
您可以使用模型管理员在列表中显示该 StudentId,但是 StudentId 字段在表单上将不可用,因为它是 AutoField,因为 @brunodesthuilliers 说您需要覆盖管理员表单模板才能获取 id表单上的字段。
标签: python django django-admin