站点管理
# 1. 配置admin应用
django.contrib.admin # 自己已经配置好
# 2. 创建管理员用户
python3 manage.py createsuperuser
依次输入用户名>邮箱一密码->确认密码
# 3. 创建模型类
class BookInfo(models.Model):
# verbose_name: 后台管理显示中文名
name = models.CharField(max_length=30, verbose_name="书名")
pwd = models.CharField(max_length=30, verbose_name="密码")
ssex = models.IntegerField(db_column="sex",verbose_name="性别")
class Meta:
db_table = "bookinfo"
verbose_name = "图书表"
# bool值显示男女
def sex(self):
if self.ssex:
return "男"
else:
return "女"
# sex.short_description="性别"
# 4. 在App/admin.py 里面注册自己的模型类
from App03.models import BookInfo # 模型类
# 用户管理(127.0.0.1:8000/admin/)
class BookInfoAdmin(admin.ModelAdmin):
# 显示字段
list_display = ["pk", "name", 'pwd','sex']
# 按照那个字段名搜索
search_fields = ["name"]
# 分页
list_per_page = 2
# 过滤字段(和搜索差不多)
list_filter = ["name"]
# 添加时信息分组
fieldsets = [
("基本信息", {"fields": ["name"]}),
("其他信息", {"fields": ["pwd"]}),
]
# 注册模型类 在后台展示
admin.site.register(BookInfo,BookInfoAdmi)
...
# 关联对象
#TabularInline 横着展示添加学生的布局
#StackedInline 竖着展示添加学生的布局
# class AddStudents(admin .TabularInline):
class AddStudents(admin.StackedInline):
class AddStudents(admin.TabularInline):
model = Students #关联的模型名称
extra = 2 #添加学生的个数
#配置数据的展示
class GradeAdmin(admin.ModelAdmin):
inlines = [AddStudents]