: 내 admin.py에서장고 관리 사이트보기 일대일 수업 필드 내 모델
class Professor(models.Model):
user = models.OneToOneField(User)
salary = models.FloatField()
class Student(models.Model):
user = models.OneToOneField(User)
birth_date = models.DateField()
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
UserAdmin.list_display = ('email', 'first_name', 'last_name','is_active','date_joined', 'is_staff')
이 어떻게 내부 사용자 사용자가 교수 또는 학생 인 경우 관리자 사이트를 표시 할 수 있습니까? 모델을 기반으로 한 개인 급여 같은 속성에 액세스 할 수 있습니까?
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from django.contrib.auth.models import User
class ProfessorInline(admin.StackedInline):
model = Professor
class StudentInline(admin.StackedInline):
model = Student
class MyUserAdmin(UserAdmin):
inlines = [ProfessorInline, StudentInline]
admin.site.unregister(User)
admin.site.register(User, MyUserAdmin)
그것은 완벽 하진 :
필수'model' 속성이 없습니다. 또한 암호 해시를 편집 할 수 있습니다. 대신'UserAdmin'을 django의 bultin'UserAdmin'으로 확장하십시오.'User' 모델을 위해 일반 모델 관리자를 사용한다면 실종 될 수있는 꽤 많은 기능이 있습니다. –
대단히 감사합니다! – belonious