从零开始,搭建一个基于 Django 的 Web 项目

🎯 主要步骤概述

1️⃣ 安装 Python 和 pip

2️⃣ 创建虚拟环境

3️⃣ 安装 Django

4️⃣ 创建 Django 项目

5️⃣ 运行开发服务器

6️⃣ 创建一个简单的应用(app)

7️⃣ 配置数据库并迁移

8️⃣ 创建超级用户(admin)

9️⃣ 访问后台管理界面

🔟 编写一个简单的视图和路由,验证页面可访问


1️⃣ 安装 Python 和 pip

Django 是基于 Python 的,你需要先安装好 Python(自带 pip)。

  • Windows/macOS/Linux 都可以去 Python 官网 下载最新版 Python 并安装。

  • 安装时勾选 "Add Python to PATH" 选项(重要!)。

验证是否安装成功:

复制代码
python --version
pip --version

2️⃣ 创建虚拟环境(推荐)

虚拟环境能帮你隔离不同项目依赖,避免冲突。

复制代码
# 在项目根目录创建虚拟环境(venv 是名字,可以随便起)
python -m venv venv

# 激活虚拟环境
# Windows:
venv\Scripts\activate

# macOS/Linux:
source venv/bin/activate

激活后,命令行前面会出现 (venv),表示虚拟环境成功启用。


3️⃣ 安装 Django

在虚拟环境中安装 Django:

复制代码
pip install django

检查版本确认安装成功:

复制代码
django-admin --version

4️⃣ 创建 Django 项目

Django 项目是个整体容器,包含设置、数据库配置、路由等。

复制代码
django-admin startproject mysite

这样会在当前目录下创建一个 mysite 文件夹。


5️⃣ 启动开发服务器

进入项目目录:

复制代码
cd mysite

运行:

复制代码
python manage.py runserver

在浏览器打开 http://127.0.0.1:8000/,你会看到 Django 的欢迎页面,表示项目运行成功!


6️⃣ 创建应用(app)

Django 项目由一个或多个 app 组成。比如博客功能是一个 app,商城功能是另一个 app。

创建 app:

复制代码
python manage.py startapp myapp

然后你会看到多了一个 myapp 文件夹,里面有很多文件(views.pymodels.py 等)。


7️⃣ 配置数据库并迁移

默认情况下,Django 使用 SQLite 数据库。

先迁移数据库(初始化数据库结构):

复制代码
python manage.py migrate

8️⃣ 创建超级用户(后台管理)

Django 自带后台管理界面,非常方便。

复制代码
python manage.py createsuperuser

按提示输入用户名、邮箱和密码。

运行:

复制代码
python manage.py runserver

浏览器访问:http://127.0.0.1:8000/admin/

用刚才的超级用户账号登录,即可进入 Django 的后台管理界面。


9️⃣ 简单视图和路由

修改 myapp/views.py 文件:

复制代码
from django.http import HttpResponse

def home(request):
    return HttpResponse("Hello, Django!")

再修改项目的路由配置(mysite/urls.py):

复制代码
from django.contrib import admin
from django.urls import path
from myapp.views import home  # 导入刚刚的视图

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', home),  # 根路径访问 home
]

再次访问 http://127.0.0.1:8000/,你会看到 "Hello, Django!"!


🌟 到这里,Django 项目基本框架就搭建好了!🌟

接下来,你可以继续学习:

✅ 模板(HTML 渲染)

✅ 静态文件(CSS/JS)

✅ 数据模型(models)

✅ 表单和用户输入

✅ 部署到服务器(如 Heroku、阿里云)等。

相关推荐
用户37215742613520 分钟前
如何使用 Python 从 Word 文档中提取图片
python
计算机魔术师1 小时前
美国司法部正式站队 OpenAI,AI 训练的版权账要这么算了
前端
IT_陈寒1 小时前
React Hooks闭包陷阱差点让我加班到凌晨
前端·人工智能·后端
风骏时光牛马1 小时前
疑难Bug根因定位与问题复盘分析
前端
白山编程大哥2 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
创新技术阁2 小时前
FastapiAdmin 系统日志体系与核心配置参数详解
前端·后端·fastapi
掘金酱2 小时前
【社区公告】签到与矿石奖励解耦说明
前端
promiseThen2 小时前
LWC Workflow:用 7 个 Cursor Skill 搭一条 AI 协作开发流水线
前端·ai编程
一个游离的指针2 小时前
函数管道:消除深度嵌套调用
前端·javascript
浅诺3 小时前
Nginx sub_filter 的“幽灵陷阱”:为什么页面能打开,懒加载的 JS 却全是 404?
前端