在本教程中,我们将探索如何使用Django 3创建你的第一个Web项目。Django是用Python编写的高级Web框架,它遵循模型-视图-控制器(MVC)设计模式,提供了一个强大的数据库交互层,以及丰富的模板系统和管理界面。让我们深入探讨Django 3的基础知识,以及如何构建你的第一个项目。
1. **安装Django**
在开始之前,确保你的系统已经安装了Python 3.6或更高版本。然后,通过Python的包管理器pip安装Django 3:
```
pip install django==3.x
```
2. **创建新项目**
安装完成后,使用`django-admin`命令创建一个新的Django项目:
```
django-admin startproject myproject
```
这将在当前目录下创建一个名为`myproject`的文件夹,其中包含项目的初始结构。
3. **理解项目结构**
Django项目包含以下几个关键部分:
- `manage.py`: 一个命令行工具,用于执行各种管理任务。
- `settings.py`: 配置文件,包含数据库设置、应用列表等。
- `urls.py`: 主URL配置,定义项目级别的路由。
- `wsgi.py`: Web服务器网关接口,用于部署项目。
4. **创建应用**
在项目内创建一个应用,例如`myapp`:
```
python manage.py startapp myapp
```
应用通常包含模型、视图、模板和URL配置。
5. **定义模型**
在`myapp/models.py`中定义数据模型。例如,创建一个简单的`Article`模型:
```python
from django.db import models
class Article(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
pub_date = models.DateTimeField('date published')
models.py中的每个类代表数据库中的一个表。
```
6. **迁移模型**
定义模型后,需要创建数据库表。运行以下命令:
```
python manage.py makemigrations myapp
python manage.py migrate
```
7. **创建视图**
视图是处理请求并返回响应的函数。在`myapp/views.py`中创建视图:
```python
from django.shortcuts import render
from .models import Article
def article_list(request):
articles = Article.objects.all()
return render(request, 'myapp/article_list.html', {'articles': articles})
```
8. **定义URL路由**
在`myapp/urls.py`中定义应用级别的URL配置,并在`myproject/urls.py`中包含它。例如:
```python
# myapp/urls.py
from django.urls import path
from . import views
urlpatterns = [
path('articles/', views.article_list, name='article_list'),
]
# myproject/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
```
9. **创建模板**
创建`myapp/templates/myapp/article_list.html`文件,编写HTML模板:
```html
{% for article in articles %}
<h2>{{ article.title }}</h2>
<p>{{ article.pub_date }}</p>
<p>{{ article.content|linebreaks }}</p>
{% endfor %}
```
10. **运行开发服务器**
启动Django的内置开发服务器:
```
python manage.py runserver
```
访问`http://127.0.0.1:8000/articles/`,你应该能看到文章列表。
通过以上步骤,你已经成功创建并运行了你的第一个Django 3项目。这只是冰山一角,Django还有更多功能,如用户认证、中间件、表单处理、自定义管理命令等。继续学习Django文档,你会发现这个框架的强大之处,可以构建复杂且高效的Web应用程序。