向内联添加有用的功能,例如嵌套功能。
django-super-inlines的Python项目详细描述
目前,它只添加嵌套的内联线(请参见Django#9025)。 但我也计划添加我为自己的项目开发的其他功能。
目前没有单元测试,因此请自行承担风险。
如果有人花时间编写硒测试,这将非常有用。
用法
它只与django 1.7.2到1.7.8(我测试过)和1.8兼容。 不要尝试使用以前的版本,django超级内联依赖于更改 发生在1.6到1.7.2之间。
出于设计原因,不能在表格式内联线中嵌套内联线, 仅在堆叠的内联线内。
- pip安装django super inlines
- 将'super_inlines',添加到INSTALED_APPS之前'django.contrib.admin',
- 如果使用django grappelli,则添加'super_inlines.grappelli_integration', 到INSTALLED_APPS之前'grappelli',
- 继承自SuperModelAdmin,而不是ModelAdmin, SuperInlineModelAdmin而不是InlineModelAdmin,并使用类 属性inlines在内联中,就像在model admins中一样
示例用法:
fromdjango.contrib.adminimportTabularInline,StackedInline,sitefromsuper_inlines.adminimportSuperInlineModelAdmin,SuperModelAdminfrom.modelsimport*classRoomInlineAdmin(SuperInlineModelAdmin,TabularInline):model=RoomclassHouseInlineAdmin(SuperInlineModelAdmin,StackedInline):model=Houseinlines=(RoomInlineAdmin,)classOwnerAdmin(SuperModelAdmin):inlines=(HouseInlineAdmin,)site.register(Owner,OwnerAdmin)