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

春花秋月
2025-06-14 11:20
阅读 531

一、什么是Django?它是用来做什么的?

一、什么是Django?它是用来做什么的?

在开始编写代码之前,先来了解一下我们今天要学习的内容是什么。

Django 是一个使用 Python 编写的开源 Web开发框架。它可以帮助你快速地开发功能强大的网站和Web应用程序。

你可以把它想象成盖房子时的脚手架和工具包。虽然你也可以用砖块、锤子从头建造房子,但用工具包会快很多,也更安全可靠。

Django 的主要特点是:

  • 高效:内置了大量常用的功能(如用户认证、数据库操作、后台管理等),节省大量重复劳动
  • 安全:自动防止一些常见的网站漏洞(如SQL注入)
  • 可扩展:适合从小项目到大型企业级应用

简单来说,如果你想用 Python 来做网站,Django 就是一个非常好的选择。


二、环境准备:搭建Django开发环境

二、环境准备:搭建Django开发环境

第一步:安装Python

Django 是基于 Python 的框架,所以第一步你需要确保电脑里已经安装了 Python。

✅ 检查是否安装 Python: 打开终端(Windows 用户是 CMD 或 PowerShell,Mac 和 Linux 用户是终端 Terminal),输入以下命令:

python --version

如果出现类似 Python 3.x.x,说明已经安装成功。如果没有看到版本号,可以去 https://www.python.org/downloads/ 下载并安装最新版本的 Python。

💡 注意:推荐使用 Python 3.8 及以上版本


第二步:安装 pip

pip 是 Python 的官方包管理工具,用于安装各种模块和库。

大多数新版 Python 安装程序都会自带 pip。你可以通过以下命令检查是否已安装:

pip --version

如果提示没有这个命令,请重新安装 Python,并确保勾选“Add to PATH”或使用有 pip 的安装选项。


第三步:安装Django

在确认了 Python 和 pip 已安装后,我们就可以安装 Django 了。

在终端中运行下面这条命令:

pip install django

等待几秒钟,安装完成后可以通过以下命令查看是否安装成功:

django-admin --version

如果输出的是类似 4.2.10 这样的版本号,就说明安装成功啦!


第四步:创建工作目录

为了方便管理代码,我们可以新建一个专门存放项目的文件夹。

比如,在桌面上新建一个名为 my_django_project 的文件夹:

mkdir my_django_project
cd my_django_project

这样我们就进入了项目的主目录。


三、Django核心概念简介(新手友好版)

三、Django核心概念简介(新手友好版)

Django 有一些关键术语,我们来简单介绍几个最基础也是最重要的概念,帮助你理解整个项目的结构和逻辑。

1. 什么是 Web 框架?

一个 框架(Framework),就像一个已经搭好的舞台,你可以在这个舞台上表演自己的剧目(也就是编写自己的网站逻辑)。使用框架的好处是不需要从零搭建舞台,只需要专注于内容和互动。

2. MVC 架构与 MTV 模式

你可能会听说过 MVC(Model-View-Controller)架构,这是 Web 应用开发中的一种经典模式。

Django 使用的是一种叫做 MTV(Model-Template-View) 的设计模式:

模块名 职责
Model(模型) 负责与数据库交互,比如创建表格、存储数据
Template(模板) 控制网页显示的内容,就是前端页面部分
View(视图) 决定哪些数据展示给哪个页面,类似于控制器

不用担心,后面我们会通过例子慢慢理解这些概念 😊


3. 最基本的Django组件包括:

组件 功能
项目(Project) 整个网站的大工程,包含多个应用
应用(App) 具体功能模块,如博客模块、用户注册模块等
视图函数(View) 接收请求并返回响应内容(如返回 HTML 页面)
URL 路由(URLConf) 把不同的网址链接到对应的视图函数
模板(Templates) 显示网页内容,常配合 HTML 文件使用
模型(Model) 用于定义数据库结构(表结构)
数据库(Database) 存储网站的数据,默认使用 SQLite

四、实战项目:一步步创建你的第一个Django网站

四、实战项目:一步步创建你的第一个Django网站

我们将动手做一个最简单的网站——显示一句话:“欢迎来到我的第一个Django网站!”

第一步:创建项目(Project)

在我们刚创建的工作目录下运行:

django-admin startproject mysite

这行命令表示创建一个名为 mysite 的Django项目。

现在你的文件夹结构应该如下:

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        wsgi.py
  • manage.py 是一个命令行工具,用来和项目进行交互
  • settings.py 包含所有项目的配置
  • urls.py 用来配置路由(访问什么地址跳转到哪里)
  • wsgi.py 是部署网站时使用的模块

第二步:启动服务器测试项目是否运行正常

进入项目根目录并启动服务:

cd mysite
python manage.py runserver

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

Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

恭喜你!服务器已经启动成功了。

现在打开浏览器,输入网址:http://localhost:8000

你应该能看到 Django 默认的欢迎页面:

The install worked successfully! Congratulations!


第三步:创建第一个应用(App)

Django 的每一个具体功能都封装在一个叫 App 的模块中。接下来我们要添加一个功能 —— 在网页上显示一句话。

运行命令创建一个 app:

python manage.py startapp hello

现在你的目录结构变成这样:

mysite/
    manage.py
    mysite/
        ...
    hello/
        migrations/
        __init__.py
        admin.py
        apps.py
        models.py
        tests.py
        views.py

现在我们需要告诉 Django 我们新添加了一个 App。

打开 mysite/settings.py 文件,在 INSTALLED_APPS 列表中加入我们刚刚创建的 hello 模块:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'hello',   # 添加这一行
]

保存这个文件。


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

视图负责接收用户的请求,并决定返回什么内容。

打开 hello/views.py 文件,写入以下代码:

from django.http import HttpResponse

def index(request):
    return HttpResponse("欢迎来到我的第一个Django网站!")

这段代码的意思是:

  • 导入一个叫 HttpResponse 的类
  • 定义一个函数 index(),这个函数会在用户访问网页时被调用
  • 函数返回一句欢迎语句,作为网页内容呈现

第五步:配置URL路由

现在,我们要让某个网址对应这个视图函数。

创建一个新的文件:hello/urls.py,然后写入:

from django.urls import path
from . import views

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

这个配置表示访问 “空路径”,就会触发我们刚刚写好的 views.index 函数。

接着,我们要把这个 app 的 url 配置绑定到整个项目的网址体系中。

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

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

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('hello.urls')),  # 新增这行
]

这里我们引入了 hello 模块中的 urls 配置。


第六步:再次启动服务器测试效果

回到终端,按下 Ctrl + C 停止原来的服务器,然后重新启动:

python manage.py runserver

现在访问:http://localhost:8000,你会看到:

欢迎来到我的第一个Django网站!

🎉 太棒了!你刚刚完成了一个完整的“Hello World”级别的Django网站!


五、新手常见问题解答

问题1:为什么我运行服务器的时候报错说找不到模块?

回答:请确认是否正确激活虚拟环境,或者尝试重新安装一次 Django。执行命令:

pip install django

问题2:无法连接 localhost:8000?

回答:可能是端口被占用了。可以指定另一个端口启动服务器:

python manage.py runserver 8080

然后访问 http://localhost:8080

问题3:更改了代码但没反应怎么办?

回答:有时需要重启开发服务器才能使代码改动生效。关闭再重新运行 runserver 即可。

问题4:页面显示中文乱码?

回答:Django 默认是 utf-8 编码,一般不会出问题。请检查你的编辑器是否以 UTF-8 格式保存了文件。


六、学习建议:下一步该学什么?

恭喜你完成了第一次实战!

接下来,你可以继续学习以下几个方向,进一步掌握 Django 的强大功能:

✅ 继续进阶学习路线图:

  1. 模板系统(Templates)

    • 学习如何将静态 HTML 页面整合到 Django 中
    • 学习变量替换、模板继承等高级技巧
  2. 模型系统(Models)

    • 学习如何用 Django 创建数据库表
    • 实现网站数据持久化存储
  3. 表单(Forms)

    • 学习如何让用户提交信息(比如注册、登录等)
  4. 后台管理(Admin)

    • 自动生成后台管理界面,快速管理网站内容
  5. 静态资源(Static Files)

    • 如何加载 CSS、JavaScript、图片等内容
  6. 部署上线

    • 学习将本地项目部署到互联网供他人访问

如果你坚持下去,不久后你就能做出一个像模像样的博客、电商网站,甚至社交平台!


总结

在本文中,我们:

  • 介绍了 Django 是什么以及它可以做什么
  • 一步步搭建好了开发环境
  • 理解了基本概念如视图、路由、应用
  • 动手完成了一个“欢迎页面”的小网站
  • 解决了一些常见的安装和调试问题
  • 提出了后续的学习方向

只要你肯花时间练习,不断试错,很快就能写出更复杂、更有意思的网站来!

📌 学编程最关键的就是多动手实践。遇到问题很正常,多查文档、看教程、请教别人,终将成为高手!

加油吧,未来全栈工程师!🚀


附录:完整代码片段整理

  1. hello/views.py:
from django.http import HttpResponse

def index(request):
    return HttpResponse("欢迎来到我的第一个Django网站!")
  1. hello/urls.py:
from django.urls import path
from . import views

urlpatterns = [
    path('', views.index, name='index'),
]
  1. mysite/urls.py:
from django.contrib import admin
from django.urls import include, path

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

评论 0

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