Django初级入门(一)

172 阅读3分钟

Django 是一个流行的 Python Web 框架,旨在简化 Web 应用程序的开发。遵循“尽量少做重复工作”(Don't Repeat Yourself, DRY)和“快速开发”(Rapid Development)的原则。下面是 Django 应用的基本概念和结构。

1. Django 应用的基本概念

  • 应用(App):在 Django 中,应用是一个可以独立工作的 Web 应用程序模块。例如,博客、数据库管理、用户认证等可以被视为独立的应用。一个 Django 项目可以包含多个应用。

  • 项目(Project):项目是一个 Django 应用的集合,通常包括多个应用和配置文件。

2. Django 的主要组成部分

  • 模型(Models):模型是应用的核心,负责定义数据结构和与数据库交互。使用 Django 的 ORM(对象关系映射)可以简化数据库操作。

  • 视图(Views):视图是处理请求的 Python 函数或类,负责接收用户请求并返回响应。视图通常从模型获取数据,并将其传递给模板进行呈现。

  • 模板(Templates):模板是 HTML 文件,包含动态内容和模板标签,用于生成用户界面。

  • URL 路由(URLs):Django 使用 URL 路由系统来将请求映射到视图函数。每个 URL 模式与视图关联。

3. 创建一个 Django 应用

下面是创建和设置一个简单 Django 应用的步骤:

第一步:安装 Django

首先,确保已经安装了 Django。可以使用 pip 安装:

pip install django

第二步:创建 Django 项目

使用以下命令创建一个新的 Django 项目:

django-admin startproject myproject
cd myproject

第三步:创建 Django 应用

在项目中创建一个新的应用:

python manage.py startapp myapp

第四步:定义模型

myapp/models.py 中定义数据模型:

from django.db import models

class Post(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

    def __str__(self):
        return self.title

第五步:注册应用和模型

myproject/settings.py 中,将应用添加到 INSTALLED_APPS 列表:

INSTALLED_APPS = [
    ...
    'myapp',
]

然后,在 myapp/admin.py 中注册模型以便在 Django 管理后台使用:

from django.contrib import admin
from .models import Post

admin.site.register(Post)

第六步:创建和应用迁移

创建数据库迁移并应用它们:

python manage.py makemigrations
python manage.py migrate

第七步:创建视图

myapp/views.py 中创建一个简单的视图:

from django.shortcuts import render
from .models import Post

def post_list(request):
    posts = Post.objects.all()
    return render(request, 'myapp/post_list.html', {'posts': posts})

第八步:设置 URL 路由

myapp/urls.py 中定义 URL 路由:

from django.urls import path
from .views import post_list

urlpatterns = [
    path('', post_list, name='post_list'),
]

然后在 myproject/urls.py 中包含应用的 URL 路由:

from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myapp.urls')),
]

第九步:创建模板

myapp/templates/myapp/post_list.html 中创建一个模板文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Posts</title>
</head>
<body>
    <h1>Post List</h1>
    <ul>
        {% for post in posts %}
            <li>{{ post.title }} - {{ post.created_at }}</li>
        {% endfor %}
    </ul>
</body>
</html>

第十步:运行开发服务器

最后,运行 Django 开发服务器:

python manage.py runserver

现在,可以在浏览器中访问 http://127.0.0.1:8000/ 来查看应用。

总结

这就是创建一个简单 Django 应用的基本流程。Django 还提供了许多其他功能,例如用户认证、表单处理、静态文件管理等。可以通过 Django 官方文档(Django Documentation)深入学习更多内容