请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

嵌入式天空

 找回密码
 我要注册

扫一扫,访问微社区

最近看过此主题的会员

查看: 1671|回复: 0

15DjangoAdmin定制管理页面(内联)

[复制链接]

344

主题

468

帖子

3963

积分

管理员

我是一个程序员

Rank: 9Rank: 9Rank: 9

积分
3963
发表于 2017-9-13 14:37:46 | 显示全部楼层 |阅读模式
定制admin管理页面
Django提供的admin管理页面支持二次开发。

有的数据模型之间有外键联系,加入一个Teacher在不同的阶段有不同的Salary。
那么一个Teacher数据就有可能对应多个Salary 数据。
当看到一个Teacher数据的时候需要看到这个Teacher的所有Salary数据。

lzy@embsky:/home/zyli/test/python/django/adminProject1$ vim embsky/admin.py
修改如下:
class SalaryStyle(admin.TabularInline) :
    model = Salary
注意:以上需要内联的数据模型
class TeacherStyle(admin.ModelAdmin) :
    #内联 :当一个Teacher数据显示的时候,它对应的Salary数据都会显示   
    inlines = [SalaryStyle]
    fields = (
'name', 'age')
admin.site.register(Teacher, TeacherStyle)
admin.site.register([Salary])

注意:内联只能用于有外键关系的数据模型。
              在这个例子中Salay中的job_num是外键,指向Teacher中的主键。

测试:
a.png
如果TabularInline改成StackedInline的话,显示效果如下:
b.png
              

最近很忙
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

QQ|Archiver|手机版|小黑屋|EBMSKY Inc. ( 冀ICP备17022971号-1  

GMT+8, 2019-7-23 17:53 , Processed in 0.077985 second(s), 39 queries .

Powered by Discuz! X3.2

© 2014-2018 Comsenz Inc. 【嵌入式天空】设计

快速回复 返回顶部 返回列表