一、Django简介
Django,这个名字来源于著名爵士音乐家Django Reinhardt。它是一个开源的Web框架,由Adrian Holovaty和Simon Willison于2003年开发,并以BSD许可证发布。Django基于MVC设计模式,旨在让开发者能够快速构建高质量的Web应用。
### 二、Django环境搭建
在开始Django开发之前,需要搭建Python开发环境。Python 3是Django 2.x及以上版本的运行环境。可以使用`pyenv`来管理不同版本的Python。安装Django可以通过Python的包管理工具`pip`完成:
```bash
pip install django
```
### 三、Django的MTV架构
Django的MTV架构指的是模型(Model)、模板(Template)和视图(View)。
- **模型**:定义数据的结构和行为,通常在`models.py`文件中定义。
- **视图**:处理用户请求和返回响应的函数或类,定义在`views.py`文件中。
- **模板**:渲染HTML页面的文本文件,使用特定的模板语言。
### 四、模型:数据模型的定义
Django的模型系统是一个高级的ORM(对象关系映射),允许你以Python类的形式定义你的数据库表:
```python
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
published_date = models.DateField()
```
### 五、视图:处理HTTP请求
视图是Django中处理逻辑的地方。Django支持函数视图和类视图:
```python
from django.http import HttpResponse
def hello_world(request):
return HttpResponse("Hello, World!")
from django.views import View
from django.http import HttpResponse
class HelloView(View):
def get(self, request):
return HttpResponse("Hello, World!")
```
### 六、模板:渲染用户界面
Django的模板系统提供了一种将数据动态插入到HTML页面的方法:
```html
<!-- templates/hello_world.html -->
<html>
<head><title>Hello, World!</title></head>
<body>
<p>{{ message }}</p>
</body>
</html>