Django 超详细初级教程(零基础可学)

这是一套从零开始、一步一步跟着做的 Django 入门教程,全程用最简单的语言,不跳步、不挖坑,学完能独立做出一个完整的小网站!

一、先搞懂:Django 是什么?

Django 是 Python 写的 Web 开发框架,用来快速做网站、后台、管理系统,自带后台管理、数据库、登录注册等功能,不用从零写。


二、环境准备(必须先做)

你只需要两样东西:

  1. 安装 Python(3.8 及以上版本)
  2. 一个代码编辑器(推荐 VS Code)

1. 检查 Python 是否安装

打开电脑的 命令提示符(CMD)/ 终端,输入:

bash

运行

复制代码
python --version

出现版本号就说明成功。

2. 安装 Django

在 CMD / 终端里直接运行:

bash

运行

复制代码
pip install django

安装完成后检查:

bash

运行

复制代码
django-admin --version

出现版本号 = 安装成功!


三、第一步:创建 Django 项目

1. 选一个文件夹

先在电脑上新建一个空文件夹(比如 django_project),用终端进入这个文件夹

2. 创建项目

bash

运行

复制代码
django-admin startproject mysite

mysite 是项目名字,可以自己改。

3. 项目结构长这样

plaintext

复制代码
mysite/
├── mysite/        # 项目配置文件夹
│   ├── __init__.py
│   ├── settings.py  # 核心配置
│   ├── urls.py      # 路由配置
│   └── wsgi.py
└── manage.py       # 项目命令工具

四、第二步:运行第一个 Django 网站

进入项目根目录(有 manage.py 的文件夹):

bash

运行

复制代码
cd mysite

运行服务器:

bash

运行

复制代码
python manage.py runserver

打开浏览器访问:

plaintext

复制代码
http://127.0.0.1:8000/

看到小火箭页面 = 成功!

Ctrl + C 可以停止服务器。


五、第三步:创建应用(App)

Django 里功能模块化,一个功能 = 一个 App。我们创建一个首页应用:

bash

运行

复制代码
python manage.py startapp home

现在多了一个 home/ 文件夹。

注册应用(必须做!)

打开 mysite/settings.py,找到 INSTALLED_APPS,添加:

python

运行

复制代码
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'home',   # 把我们的 home 应用加进来
]

六、第四步:写第一个页面(Hello World)

1. 打开 home/views.py

这是视图文件,负责处理页面逻辑。

写入代码:

python

运行

复制代码
from django.shortcuts import render
from django.http import HttpResponse

# 首页视图
def index(request):
    return HttpResponse("Hello Django!这是我的第一个页面!")

2. 配置路由(URL)

让浏览器地址能访问到这个页面。

① 在 home 文件夹里新建 urls.py

python

运行

复制代码
from django.urls import path
from . import views  # 导入当前文件夹的视图

# 子路由配置
urlpatterns = [
    path('', views.index, name='index'),  # 空路径对应首页
]
② 配置项目总路由 mysite/urls.py

python

运行

复制代码
from django.contrib import admin
from django.urls import path, include  # 加 include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('home.urls')),  # 把首页路由指向 home 应用
]

3. 再次运行服务器

bash

运行

复制代码
python manage.py runserver

打开 http://127.0.0.1:8000你会看到:Hello Django!这是我的第一个页面!


七、第五步:使用 HTML 模板(真正的网页)

1. 在 home 文件夹里新建文件夹

plaintext

复制代码
home/
└── templates/
    └── index.html

2. 写一个简单 HTML

index.html

html

预览

复制代码
<!DOCTYPE html>
<html>
<head>
    <title>我的Django网站</title>
</head>
<body>
    <h1>欢迎来到 Django 首页!</h1>
    <p>这是我用模板渲染的页面</p>
</body>
</html>

3. 修改视图,渲染模板

打开 home/views.py

python

运行

复制代码
from django.shortcuts import render

def index(request):
    # 直接渲染模板文件
    return render(request, 'index.html')

刷新页面,就能看到漂亮的网页了!


八、第六步:连接数据库(最简单版)

Django 自带 SQLite 数据库,不用额外安装。

1. 生成数据库表

bash

运行

复制代码
python manage.py migrate

2. 创建超级管理员(登录后台)

bash

运行

复制代码
python manage.py createsuperuser

按提示输入:

  • 用户名
  • 邮箱(直接回车跳过)
  • 密码(输入时不显示,正常)

3. 登录后台管理

运行服务器:

bash

运行

复制代码
python manage.py runserver

访问:

plaintext

复制代码
http://127.0.0.1:8000/admin/

用刚才的账号密码登录,就能看到 Django 强大的自带后台!


九、第七步:创建模型(数据库表)

打开 home/models.py

python

运行

复制代码
from django.db import models

# 文章模型(相当于数据库表)
class Article(models.Model):
    title = models.CharField(max_length=100)  # 标题
    content = models.TextField()  # 内容
    created_time = models.DateTimeField(auto_now_add=True)  # 创建时间

    def __str__(self):
        return self.title  # 在后台显示标题

生成数据表

bash

运行

复制代码
python manage.py makemigrations
python manage.py migrate

把模型注册到后台

打开 home/admin.py

python

运行

复制代码
from django.contrib import admin
from .models import Article

admin.site.register(Article)

刷新后台,你就能直接增删改查文章了!


十、第八步:把数据显示到网页

修改 home/views.py

python

运行

复制代码
from django.shortcuts import render
from .models import Article  # 导入模型

def index(request):
    # 获取所有文章
    articles = Article.objects.all()
    # 传给模板
    return render(request, 'index.html', {'articles': articles})

修改模板 index.html

html

预览

复制代码
<!DOCTYPE html>
<html>
<head>
    <title>文章列表</title>
</head>
<body>
    <h1>文章列表</h1>
    <ul>
        {% for article in articles %}
        <li>
            <h3>{{ article.title }}</h3>
            <p>{{ article.content }}</p>
            <small>{{ article.created_time }}</small>
        </li>
        {% endfor %}
    </ul>
</body>
</html>

刷新首页,你在后台添加的文章自动显示在网页上


十一、你已经学会的核心技能

  • 安装 Django & 创建项目
  • 运行开发服务器
  • 视图 + 路由 + 模板
  • 后台管理系统
  • 数据库模型
  • 数据展示到网页

这就是 Django 最核心的开发流程

相关推荐
bucenggaibian1 小时前
Nearoh:9年开发者从零造语言,Python的简洁+C的性能
c语言·python·开发者·编程语言·nearoh
小小测试开发2 小时前
EasyOCR用法全攻略:Python开源OCR工具快速上手,图文识别零门槛
python·开源·ocr
用户23935610480582 小时前
DeepTutor源码安装与配置
python
EnCi Zheng2 小时前
04-缩放点积注意力代码实现 [特殊字符]
人工智能·pytorch·python
HuaCode2 小时前
OpenClaw 常用命令 FAQ
python·faq·openclaw
小锋java12342 小时前
【技术专题】Matplotlib3 Python 数据可视化 - Matplotlib3 多子图及布局实现
python
西洼工作室2 小时前
python邮箱令牌/点击验证、邮箱验证码实现
前端·python
倔强的猴子(翻版)2 小时前
我用 Python 写了个排序库,一亿数据量下比 C 级 np.sort() 快 7 倍
人工智能·python·算法·阿里云·文心一言
郝学胜-神的一滴2 小时前
深入理解回归损失函数:MSE、L1 与 Smooth L1 的设计哲学
人工智能·python·程序人生·算法·机器学习·数据挖掘·回归