InlineModelAdmin对象的学习
Posted haiyan123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了InlineModelAdmin对象的学习相关的知识,希望对你有一定的参考价值。
一、InlineModelAdmin的介绍
管理界面可以在与父模型相同的页面上编辑模型。这些被称为内联。
Django提供了两个子类,InlineModelAdmin
它们是:
这两者之间的区别仅仅是用于呈现它们的模板。
二、InlineModelAdmin的使用
1、假设现在有这样的model
from django.db import models class Author(models.Model): name = models.CharField(max_length=100) class Book(models.Model): author = models.ForeignKey(Author, on_delete=models.CASCADE) title = models.CharField(max_length=100)
2、你可以编辑作者页面上创作的书籍,在模型中指定他们,可以将内联添加到模型中。
from django.contrib import admin class BookInline(admin.TabularInline): model = Book class AuthorAdmin(admin.ModelAdmin): inlines = [ BookInline, ]
三、InlineModelAdmin的选项
InlineModelAdmin
与许多相同的功能ModelAdmin
共享,并增加了一些功能(共享功能实际上是在BaseModelAdmin
超类中定义的 )。共享功能是:
fieldsets
fields
formfield_overrides
exclude
filter_horizontal
filter_vertical
ordering
prepopulated_fields
get_queryset()
radio_fields
readonly_fields
raw_id_fields
formfield_for_choice_field()
formfield_for_foreignkey()
formfield_for_manytomany()
has_add_permission()
has_change_permission()
has_delete_permission()
has_module_permission()
详见官方文档。
以上是关于InlineModelAdmin对象的学习的主要内容,如果未能解决你的问题,请参考以下文章
如何从管理上下文数据中找到InlineModelAdmin?
覆盖 Django InlineModelAdmin 上的 save_model
Django inlinemodeladmin 验证 - 但具有通用关系
Django InlineModelAdmin:部分显示内联模型并链接到完整模型