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. 总结
项目回顾
学习资源推荐
-
+
首页
媒体文件处理
媒体文件是指用户上传的文件,如图片、文档等。Django通过`MEDIA_URL`和`MEDIA_ROOT`设置来管理媒体文件。 #### **2.1 配置媒体文件** 在项目的`settings.py`文件中,需要配置媒体文件的路径和存储位置。 **示例:配置媒体文件** Python复制 ```python # settings.py # 媒体文件的URL前缀 MEDIA_URL = '/media/' # 媒体文件的存储目录 MEDIA_ROOT = os.path.join(BASE_DIR, 'media') ``` - `MEDIA_URL`:定义媒体文件的URL前缀。 - `MEDIA_ROOT`:定义媒体文件的存储目录。 #### **2.2 使用媒体文件** 在模型中使用`FileField`或`ImageField`字段来处理用户上传的文件。 **示例:定义模型** Python复制 ```python from django.db import models class Profile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) avatar = models.ImageField(upload_to='avatars/', blank=True, null=True) ``` 在上述代码中: - `avatar`字段是一个图片字段,上传的文件将存储在`avatars/`目录下。 #### **2.3 显示媒体文件** 在模板中显示媒体文件时,需要使用文件字段的`url`属性。 **示例:在模板中显示媒体文件** HTML复制 ```html <!-- templates/profile.html --> {% if profile.avatar %} <img src="{{ profile.avatar.url }}" alt="Profile Avatar"> {% else %} <p>No avatar uploaded.</p> {% endif %} ``` 在上述代码中: - `profile.avatar.url`:生成媒体文件`avatar`的URL。 #### **2.4 配置媒体文件的URL模式** 在开发环境中,需要在项目的`urls.py`文件中添加媒体文件的URL模式。 **示例:配置媒体文件的URL模式** Python复制 ```python # urls.py from django.conf import settings from django.conf.urls.static import static urlpatterns = [ # 其他URL模式 ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) ``` 在上述代码中: - `static()`函数用于在开发环境中提供媒体文件的访问路径。
黄老师
2025年2月7日 09:56
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码