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

工程师Data
2025-06-26 11:29
阅读 502

开篇:Django是什么?用来做什么?

开篇:Django是什么?用来做什么?

Django 是一个用 Python 编写的 Web开发框架。它可以帮助你快速构建功能强大的动态网页。

简单理解一下,“Web开发框架”就像是为盖房子准备好的“建材包”,里面有砖头(数据库操作)、水泥(路由管理)、门窗(表单)等常用组件,直接拿来就可以用,大大节省了开发时间。

Django 的口号是:“让开发者专注于写代码,而不是重复造轮子。”这意味着你可以用更少的代码,快速实现复杂的 Web 功能,比如注册登录、后台管理、文章发布系统等。

在本教程中,我们将一步步带你使用 Django 搭建一个简单的网站 —— 它会展示一句欢迎语,并有一个页面可以显示当前的时间。


环境准备:搭建你的开发环境

环境准备:搭建你的开发环境

在开始之前,你需要安装以下工具:

1. 安装 Python

确保你的电脑上已经安装了 Python。目前推荐版本是 Python 3.9 以上

打开终端(Mac/Linux)或命令提示符(Windows),输入:

python --version

或者(某些系统中):

python3 --version

你会看到类似这样的输出:

Python 3.10.6

如果没有安装,请前往 https://www.python.org/downloads/ 下载并安装。


2. 安装 pip(Python 包管理器)

pip 是用来安装 Python 库的工具。大多数 Python 安装包中都自带了 pip。

检查是否已安装:

pip --version

如果没安装,请参考官方文档进行安装:https://pip.pypa.io/en/stable/installation/


3. 安装 Django

使用 pip 来安装 Django:

pip install django

安装完成后查看版本:

django-admin --version

你应该能看到类似 4.2.5 这样的数字,表示安装成功。


4. 创建项目目录(可选但推荐)

创建一个专门存放 Django 项目的文件夹,例如:

mkdir mysite
cd mysite

核心概念讲解

什么是框架中的“项目”和“应用”?

  • 项目(Project):整个网站的整体配置和结构,相当于一座大楼。
  • 应用(App):网站中的某一个功能模块,比如一个博客板块、用户系统、论坛模块等等,相当于大楼里的房间。

通常一个项目包含多个应用。


路由(URL)和视图(View)

  • 路由(URL):就是浏览器地址栏里看到的网址,比如 /about/ 或者 /contact/
  • 视图(View):是处理这个网址请求的 Python 函数或类,负责返回给用户的网页内容。

打个比方:

  • 路由 = 门牌号 /hello/
  • 视图 = 住在那间房子里的人,他决定开门的时候给你说什么话

模板(Template)

模板是用来生成 HTML 页面的文件。它可以让我们的网页看起来更美观,也可以插入动态数据。

例如,一个叫 hello.html 的模板文件,里面可以写 HTML 内容,也可以加入变量,如:

<h1>你好,{{ name }}</h1>

静态文件(Static Files)

静态文件包括网站中使用的图片、CSS、JS 文件等。Django 提供了一套机制来集中管理和加载这些文件。


实战项目:搭建你的第一个 Django 网站

第一步:创建项目

运行命令创建一个新的 Django 项目:

django-admin startproject mysite

这会在当前目录下生成一个名为 mysite 的文件夹,结构如下:

mysite/
├── manage.py            # 命令行工具
└── mysite/
    ├── __init__.py      # 表示这是一个 Python 包
    ├── settings.py      # 全局配置
    ├── urls.py          # 整体路由配置
    └── wsgi.py          # WSGI 配置,用于部署网站

进入项目目录:

cd mysite

第二步:启动开发服务器

运行下面这条命令,启动 Django 自带的本地测试服务器:

python manage.py runserver

然后访问 http://127.0.0.1:8000/,你会看到 Django 默认的欢迎页面。


第三步:创建一个应用

我们来创建一个应用,让它显示 “Hello, World!”

执行命令:

python manage.py startapp hello

这样就会新增一个 hello 文件夹,里面包括几个基础文件。

我们需要把这个应用添加到项目的设置中。

打开 mysite/settings.py 文件,找到 INSTALLED_APPS 列表,在末尾添加:

'hello.apps.HelloConfig',

第四步:编写第一个视图(View)

打开 hello/views.py 文件,修改为:

from django.http import HttpResponse

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

这个视图函数接收一个请求 request,并返回一个字符串响应。


第五步:配置 URL 路由

我们现在要告诉 Django,当用户访问某个地址时,调用刚才写的视图函数。

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

from django.urls import path
from . import views

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

这个意思是:当访问 /(即首页)的时候,执行 views.index 函数。

接着,将 hello.urls 注册进主项目的路由中。

打开 mysite/urls.py,修改如下:

from django.urls import include, path

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

第六步:重新启动服务器并查看效果

再次运行:

python manage.py runserver

访问 http://127.0.0.1:8000/hello/,你就能看到熟悉的 "Hello, World!"!


第七步:再加一个页面:显示当前时间

我们再来添加一个页面,显示当前时间。

修改 hello/views.py

from django.http import HttpResponse
import datetime

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

def show_time(request):
    now = datetime.datetime.now()
    return HttpResponse(f"当前时间是:{now}")

接着在 hello/urls.py 中添加新路径:

from django.urls import path
from . import views

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

重启服务后访问 http://127.0.0.1:8000/hello/time/,你现在就能看到服务器的当前时间啦!


新手常见问题解答

❓Q1:为什么访问不了我的网站?

  • 确保你在运行 runserver 命令;
  • 使用正确地址:http://127.0.0.1:8000
  • 如果你修改过端口号,记得改成对应端口,比如 runserver 8080 就要访问 localhost:8080

❓Q2:为什么修改代码后没有变化?

Django 开发服务器支持热重载,一般保存代码后页面刷新即可生效。如果不行,尝试重启服务。


❓Q3:出现 ModuleNotFoundError: No module named 'django'

说明没有正确安装 Django,请运行:

pip install django

❓Q4:出现 TemplateDoesNotExist 错误怎么办?

这是由于模板路径配置不正确导致的。我们会在之后的教程中详细讲解模板的使用方法,现在先不用担心。


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

完成了第一个 Django 网站之后,你可以继续深入学习这些方向:

  1. 模板与静态文件

    • 学习如何使用 HTML 模板;
    • 加载 CSS 和 JavaScript;
  2. 模型(Model)和数据库

    • 数据库是怎么连接的;
    • 如何定义数据表结构;
    • 如何操作数据库增删改查;
  3. 管理后台

    • Django 自带一个强大的后台管理系统;
    • 可以方便地对数据进行可视化管理;
  4. 用户注册/登录系统

    • Django 已经内置了许多认证功能;
    • 学习如何快速接入;
  5. 部署上线

    • 把网站部署到云服务器;
    • 配置 Nginx + Gunicorn;
    • 设置数据库和域名绑定;

结语

恭喜你!你已经用 Django 成功搭建了第一个网站!虽然只是个小例子,但它涵盖了 Web 开发的基本流程:创建项目 → 编写视图 → 配置路由 → 启动服务器。

接下来的学习路上,你会发现 Django 的强大之处远远不止如此。只要保持动手实践,就一定能掌握这项实用技能。

祝你学习顺利,码出精彩! 💻🚀

评论 0

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