掌握Django内联TabularInline和StackedInline示例
推荐超级课程:
- 本地离线DeepSeek AI方案部署实战教程【完全版】
- Docker快速入门到精通
- Kubernetes入门到大师通关课
- AWS云服务快速入门实战
目录
- 掌握Django内联TabularInline和StackedInline示例
- **前提条件**
- **Django 内联管理简介**
- **设置 Django 项目**
- **创建模型**
- **在管理中注册模型**
- **使用 TabularInline**
- **使用 StackedInline**
- **自定义内联管理**
- **使用 CSS 和 JavaScript 增强内联管理**
- **添加自定义 CSS 和 JavaScript**
- **更新 Settings 和 urls.py 文件**
- 运行
- **结论**
Django 的管理界面是一个强大的工具,用于管理应用程序的数据。它最有用的功能之一是能够使用内联模型管理类在同一页面上编辑相关模型的数据。在本教程中,我们将通过详细的示例介绍如何使用 TabularInline
和 StackedInline
。
前提条件
- Python 3.8 或更高版本
- Django 4.0 或更高版本
Django 内联管理简介
Django 内联管理类 (TabularInline
和 StackedInline
) 允许我们在同一页面上添加相关模型数据。这对于具有外键关系的模型特别有用。
设置 Django 项目
首先,确保您已安装 Django。创建一个新的 Django 项目和应用程序:
django-admin startproject myproject
cd myproject
django-admin startapp myapp
在 settings.py
中将 myapp
添加到 INSTALLED_APPS
:
# settings.py INSTALLED_APPS = [ # ... 'myapp',
]
创建模型
创建两个模型,Author
和 Book
,其中每本书都有一个指向作者的外键。
# myapp/models.py from django.db import models class Author(models.Model): name = models.CharField(max_length=100) def __str__(self): return self.name class Book(models.Model): author = models.ForeignKey