Django基础教程
第一部分:基础入门
1. 引言
Django简介
Django的优势与应用场景
2. 搭建开发环境
安装Python
创建虚拟环境
安装Django
3. 创建第一个Django项目
初始化Django项目
项目结构解析
启动开发服务器
4. Django的MVT架构
模型(Model)
视图(View)
模板(Template)
URL路由
第二部分:核心功能
1. 模型(Model)
定义模型
数据库迁移
模型字段与选项
2. 视图(View)
视图函数
基于类的视图
视图装饰器
3. 模板(Template)
创建模板
模板语法
模板继承
4. URL路由
定义URL模式
路由分发
5. 表单处理
定义表单
表单验证
文件上传
第三部分:高级功能
1. 用户认证与权限
用户认证
权限管理
2. Django Admin
自定义Admin界面
管理动作
3. 静态文件与媒体文件
静态文件管理
媒体文件处理
4. Django REST framework(DRF)
DRF简介
序列化器
视图集与路由
5. API文档
使用Swagger生成API文档
第四部分:实战与部署
1. 实战项目开发
用户管理系统
博客系统
文章管理系统
2. 数据库迁移
迁移至MySQL
数据库优化
3. 日志管理
日志配置
日志记录
4. 部署生产环境
部署到WSGI服务器
使用Docker部署
部署检查清单
5. 性能优化
性能优化策略
缓存机制
6. 总结
项目回顾
学习资源推荐
-
+
首页
自定义Admin界面
Django Admin 提供了丰富的自定义选项,可以修改默认的管理界面,使其更符合项目需求。 #### **1.1.1 注册模型** 要将模型显示在 Admin 界面中,需要在应用的 `admin.py` 文件中注册模型。 **示例:注册模型** Python复制 ```python from django.contrib import admin from .models import Book, Author # 注册模型 admin.site.register(Book) admin.site.register(Author) ``` #### **1.1.2 自定义模型Admin类** 可以通过定义一个继承自 `admin.ModelAdmin` 的类来自定义模型的显示方式。 **示例:自定义模型Admin类** Python复制 ```python from django.contrib import admin from .models import Book, Author class BookAdmin(admin.ModelAdmin): list_display = ('title', 'author', 'published_date', 'price') # 列表显示字段 list_filter = ('author', 'published_date') # 过滤器 search_fields = ('title', 'author__name') # 搜索字段 ordering = ('published_date',) # 排序字段 date_hierarchy = 'published_date' # 按日期层次结构显示 fields = ('title', 'author', 'published_date', 'isbn_number', 'price') # 编辑表单显示字段 readonly_fields = ('isbn_number',) # 只读字段 class AuthorAdmin(admin.ModelAdmin): list_display = ('name', 'email') search_fields = ('name', 'email') # 注册模型和自定义Admin类 admin.site.register(Book, BookAdmin) admin.site.register(Author, AuthorAdmin) ``` 在上述代码中: - `list_display` 定义了在列表页显示的字段。 - `list_filter` 定义了右侧的过滤器。 - `search_fields` 定义了可搜索的字段。 - `ordering` 定义了默认的排序方式。 - `date_hierarchy` 定义了按日期层次结构显示的字段。 - `fields` 定义了编辑表单中显示的字段。 - `readonly_fields` 定义了只读字段。 #### **1.1.3 自定义Admin站点标题** 可以通过修改 `admin.py` 文件中的 `site` 属性来自定义 Admin 站点的标题和标题栏。 **示例:自定义Admin站点标题** Python复制 ```python from django.contrib import admin admin.site.site_header = "My Django Admin" admin.site.site_title = "My Admin Portal" admin.site.index_title = "Welcome to My Admin Portal" ``` ###
黄老师
2025年2月7日 09:53
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码