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超类中定义的 )。共享功能是:

详见官方文档。

  

原文地址:https://www.cnblogs.com/haiyan123/p/9154957.html