好久不见!基于上一篇博客:用Django写一个基于B/S架构的简1单应用,更新一下django的站点管理咯~
站点首页
将项目里models.py
中的类名以中文显示👇
可以在下图中的位置插入这样一段代码:
class Meta:
verbose_name = '房东信息'
verbose_name_plural = '房东信息' #复数时
列表页属性
django自带的原始列表页是长这样滴~
我们想要的页面长这样~👇
所以,我们需要在项目里的admin.py
插入下面代码:
class HousesAdmin(admin.ModelAdmin):
def hdelete(self):
if self.isDelete:
return "出租中"
else:
return "空置中"
hdelete.short_description = "房间状态"
# 显示字段,pk为pymysql中的id(自动生成),其他字段为自己在models.py模型类中定义的字段,可以根据自己的需要来显示哪些字段和字段的顺序
list_display = ['pk','hname',hdelete,'type', 'area', 'address', 'rent', 'remarks']
# 过滤字段
list_filter = ['hname']
# 搜索字段
search_fields = ['hname']
# 分页
list_per_page = 2
admin.site.register(Houses,HousesAdmin)
内容编辑页
在添加房东信息
的同时,添加其名下两个房源信息
~👇
我们可以在下面图中的位置插入这些代码:
#关联对象
#StackedInline与TabularInline作用一样,只是列表的显示方式不同而已
Class HousesAdd(admin.TabularInline):
model = Houses
extra = 2 # 添加对象的同时,添加关联对象的2个信息
class OwnersAdmin(admin.ModelAdmin):
#列表页属性
inlines = [HousesAdd]
最后,用Xmind总结一下装饰django站点管理的一些知识点,像列表页的执行按钮位置、内容编辑页的属性分组等等功能可以根据自己的需要添加,这里就不贴代码和截图了~