Django入门教程:搭建你的第一个Python网站

深夜构建者
2025-06-20 10:53
阅读 443

开篇:Django 是什么?我们可以用它做什么?

开篇:Django 是什么?我们可以用它做什么?

如果你是零基础的新手,第一次听说 Django,不用担心。我们用最简单的语言来介绍。

Django 是一个使用 Python 编写的后端框架(也叫 Web 框架)。你可以把它理解为一种“工具包”,用来快速地搭建功能完整的网站。就像盖房子需要砖瓦水泥一样,开发网站也需要很多基本的组件,比如:用户注册、登录、数据库存储、页面展示等。而 Django 提供了很多这些现成的功能,大大简化了我们的开发工作。

你可以在 Django 的帮助下:

  • 创建博客系统
  • 开发电商购物平台
  • 构建论坛网站
  • 制作内部管理系统

总之,只要你能想到的网站类型,Django 都可以帮你实现。

在本教程中,我们将从零开始一步步教你如何用 Django 搭建自己的第一个网站 —— 一个简单的“Hello, World!”网页。


环境准备:安装 Django 所需的所有工具

环境准备:安装 Django 所需的所有工具

第一步:安装 Python

Django 是基于 Python 的,所以我们首先得安装 Python

Windows 用户:

  1. 前往 https://www.python.org/downloads/
  2. 下载最新稳定版本(例如 Python 3.12
  3. 安装时勾选 Add to PATH
  4. 打开命令行,输入:
    python --version
    
    如果显示类似 Python 3.12.x 就表示安装成功。

Mac 用户:

  1. 使用 Homebrew 安装:
    brew install python
    
  2. 查看版本:
    python3 --version
    

Linux 用户:

通常已经预装了 Python,检查版本:

python3 --version

第二步:创建虚拟环境(推荐)

为了避免不同项目之间的依赖冲突,我们建议使用虚拟环境。

在命令行中运行以下命令:

python -m venv myenv    # 创建名为 myenv 的虚拟环境
source myenv/bin/activate  # Mac/Linux 激活
myenv\Scripts\activate     # Windows 激活

激活后,命令行前面会有 (myenv) 的提示。


第三步:安装 Django

确保你在虚拟环境中执行下面这条命令:

pip install django

安装完成后,检查是否成功:

django-admin --version

如果出现版本号(如 4.2.6),说明 Django 安装成功!


核心概念:Django 的三个核心组成部分

系统架构设计图-1

核心概念:Django 的三个核心组成部分

为了让你更轻松理解 Django 是怎么工作的,我们先来看几个最基本的术语。

1. 项目(Project)和应用(App)

  • 项目(Project):整个网站的容器,可以包含多个应用(App)
  • 应用(App):具体功能模块,例如“博客”、“用户中心”、“购物车”等

举个例子,如果你要做一个电商网站,那你可能会有这些 App:

  • 商品管理
  • 购物车
  • 订单系统

所有的 App 都放在一个项目里统一管理。


2. URL、视图和模板

这是构成网页的核心三要素:

  • URL:就是地址栏中你看到的东西,例如:http://example.com/about/
  • 视图(View):负责接收请求,处理逻辑,并返回结果(通常是网页或数据)
  • 模板(Template):HTML 文件,负责展示内容

举个比喻:

  • URL 像是门牌号(我要去哪?)
  • 视图像是快递员(我来处理请求)
  • 模板就像是包裹里的东西(我要给你看的内容)

3. 数据库与模型(Model)

  • 模型(Model):用于定义数据库表结构,相当于 Excel 中的表头
  • ORM(对象关系映射):允许你用 Python 来操作数据库,而不必写 SQL 语句

比如你想保存文章信息,可以用这样的模型:

from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    pub_date = models.DateTimeField('发布日期')

这段代码会自动创建一张名为 Article 的数据库表,包括标题、内容和发布时间字段。


实战项目:制作你的第一个网页 —— Hello World!

现在我们来实际动手做一个非常简单的网站 —— 显示 "Hello, World!" 的网页。

第一步:创建项目

进入你想存放项目的目录,运行:

django-admin startproject mysite
cd mysite

此时,你会看到如下目录结构:

mysite/
├── manage.py
└── mysite/
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py
  • manage.py:管理项目的命令行工具
  • settings.py:整个项目的配置文件
  • urls.py:整个网站的入口路由(地址对应哪个功能)

第二步:启动服务器查看效果

运行以下命令:

python manage.py runserver

然后打开浏览器访问:http://localhost:8000,你会看到一个欢迎页面。

✅ 说明你的 Django 环境配置正确,项目启动成功!

按下 Ctrl + C 关闭服务器。


第三步:创建第一个 App

我们要创建一个应用,名字叫做 hello

python manage.py startapp hello

你会看到新增了一个 hello/ 目录,里面有若干文件:

  • views.py:视图函数所在的文件
  • urls.py(手动创建):该 App 的地址配置

第四步:编写视图函数

打开 hello/views.py,添加以下内容:

from django.http import HttpResponse

def index(request):
    return HttpResponse("Hello, World!")

这个视图函数接收一个请求,然后返回一个简单文本:Hello, World!


第五步:配置 URL 路由

为了让浏览器可以通过特定地址访问这个页面,我们需要设置 URL 路由。

先在 hello/ 目录中创建一个 urls.py 文件,内容如下:

from django.urls import path
from . import views

urlpatterns = [
    path('', views.index, name='index'),
]

然后,打开主项目的 urls.py(也就是 mysite/urls.py),修改内容如下:

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

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

这样,当你访问 http://localhost:8000/hello/ 时,就会看到 “Hello, World!” 页面啦!


第六步:运行服务器并测试

再次启动服务器:

python manage.py runserver

访问 http://localhost:8000/hello/,看看是不是出现了熟悉的 “Hello, World!”

✅ 成功!你已经完成了你的第一个 Django 网页!


常见问题解答(FAQ)

Q1:为什么我的页面空白?

A:请检查以下几点:

  • 是否忘记启动服务器?
  • 是否修改了 urls.py 并保存?
  • 是否忘记调用 include()

Q2:为什么终端报错:“ModuleNotFoundError: No module named 'hello'”

A:这是因为你没有将新创建的 app 添加到项目的 INSTALLED_APPS 中。

打开 mysite/settings.py,找到 INSTALLED_APPS,加入 'hello'

INSTALLED_APPS = [
    ...
    'hello',
]

Q3:路径匹配失败,页面无法访问?

A:确认一下 URL 匹配规则:

  • 主项目中的 URL 配置是 /hello/
  • 子应用中是空字符串 '',所以完整路径是:/hello/

Q4:能否同时运行多个项目?

A:不能在同一台电脑上使用相同的端口运行多个 Django 项目。如果遇到错误说 Port 8000 is already in use,可以换一个端口运行:

python manage.py runserver 8001

学习建议:下一步可以学什么?

恭喜你,已经完成了你的第一个 Django 项目!接下来你可以继续深入学习以下几个方向:


1. 使用模板(Template)让页面更美观

目前我们只是返回纯文本。想要构建漂亮的网页,可以使用 Django 的模板系统:

  • 新建 templates/ 目录
  • 编写 HTML 文件
  • 使用 {% %}{{ }} 输出动态内容

2. 连接数据库,保存真实数据

使用 Model 类定义你的数据结构,然后通过 migrate 命令创建数据库表。

例如:

class Book(models.Model):
    title = models.CharField(max_length=200)
    author = models.CharField(max_length=100)

运行命令:

python manage.py makemigrations
python manage.py migrate

3. 加入后台管理(Admin)

Django 自带一个强大的后台管理系统,只需几步就能拥有:

  1. 在 Admin 注册你的模型
  2. 创建管理员账号
  3. 登录后台进行增删改查

4. 部署上线

当开发完成之后,可以将项目部署到真实的服务器上,比如:

  • 使用 Gunicorn + Nginx 搭建生产环境
  • 部署到 Heroku、Railway 或云主机(阿里云、腾讯云)

结语

在这篇文章中,你已经学会了:

  • 如何搭建 Django 开发环境
  • Django 的几个核心概念
  • 如何创建一个简单的网页
  • 常见问题的解决方法
  • 未来学习的方向

只要坚持练习,不断实践,你一定能够成长为一名优秀的 Django 开发者!

💡 记住一句话:写代码最重要的是多动手,别怕犯错,错了就改。

祝你在学习 Django 的路上越走越远!如果你想了解更多进阶内容,欢迎继续关注我们后续的系列课程 👩‍💻👨‍💻

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝