[特殊字符] Django 常用命令
🚀 Django 常用命令大全:从开发到部署
Django 提供了许多实用的命令,可以用于 数据库管理、调试、测试、用户管理、运行服务器、部署 等。
本教程将详细介绍 Django 开发中最常用的命令,并提供 示例,帮助你更高效地使用 Django。
📌 1. Django 开发环境相关命令
✅ 1.1 创建 Django 项目
django-admin startproject 项目名称
- 作用:创建一个新的 Django 项目
{项目名称},生成settings.py、manage.py等文件。 - 项目目录结构:
myproject/ ├── manage.py ├── {项目名称}/ │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ ├── asgi.py │ ├── wsgi.py
✅ 1.2 创建 Django 应用(App)
python manage.py startapp 应用名称
-
作用:在
myproject项目下创建{应用名称}应用(App)。 -
应用目录结构:
{应用名称}/ ├── migrations/ ├── __init__.py ├── admin.py ├── apps.py ├── models.py ├── tests.py ├── views.py -
注意:创建
App后,需要在settings.py中注册:INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','myapp', # ✅ 注册应用 ]
📌 2. 运行服务器
✅ 2.1 启动 Django 服务器
python manage.py runserver
-
作用:启动 Django 内置的开发服务器(默认监听
127.0.0.1:8000)。 -
如果要修改端口:
python manage.py runserver 8080 -
如果要监听所有 IP(适用于局域网调试):
python manage.py runserver 0.0.0.0:8000
📌 3. 数据库操作
✅ 3.1 生成数据库迁移文件
python manage.py makemigrations
- 作用:Django 检测
models.py变更 并生成数据库迁移文件(不会真正修改数据库)。
✅ 3.2 应用迁移文件
python manage.py migrate
- 作用:执行
migrations/目录下的迁移文件,真正修改数据库。
✅ 3.3 显示所有迁移状态
python manage.py showmigrations
- 作用:显示哪些迁移已应用,哪些未应用。
✅ 3.4 还原迁移(回滚)
python manage.py migrate myapp 0001_initial # 回滚到某个迁移版本
python manage.py migrate myapp zero # 删除所有迁移
✅ 3.5 清空数据库(危险!)
python manage.py flush
- 作用:清除数据库中的所有数据(但不会删除表结构)。
- ⚠️ 注意:这个命令会 清空所有用户数据!
✅ 3.6 强制重新应用迁移(危险!)
python manage.py migrate --fake 应用名称 zero
python manage.py migrate 应用名称
📌 4. Django Shell(交互式调试)
✅ 4.1 启动 Django Shell
python manage.py shell
- 作用:进入交互式 Python 环境,直接操作 Django ORM、查询数据库、调试代码。
✅ 4.2 使用 Django Shell 查询数据
from myapp.models import Chat# 查询所有 Chat 记录
chats = Chat.objects.all()
print(chats)# 创建新数据
new_chat = Chat.objects.create(user_id=1, title="测试对话")
print(new_chat.id)
✅ 4.3 启动 Django Shell 并支持 IPython
python manage.py shell_plus --ipython
shell_plus(需要安装django-extensions):
好处:pip install django-extensions- 自动加载所有
models.py - 更强的语法高亮
- 更丰富的调试工具
- 自动加载所有
📌 5. 用户管理
✅ 5.1 创建超级用户
python manage.py createsuperuser
- 作用:创建 Django 管理员账户,可用于
http://127.0.0.1:8000/admin/ - 示例:
Username: admin Email: admin@example.com Password: ******
✅ 5.2 修改用户密码
python manage.py changepassword admin
- 作用:修改
admin用户的密码。
✅ 5.3 查看所有用户
from django.contrib.auth.models import User
users = User.objects.all()
print(users)
📌 6. 测试 Django 应用
✅ 6.1 运行测试
python manage.py test 应用名称
- 作用:运行
myapp/tests.py里的所有测试。
✅ 6.2 编写简单测试
在 tests.py 里:
from django.test import TestCase
from myapp.models import Chatclass ChatTest(TestCase):def test_create_chat(self):chat = Chat.objects.create(user_id=1, title="测试聊天")self.assertEqual(chat.title, "测试聊天")
然后运行:
python manage.py test
📌 7. 静态文件管理
✅ 7.1 收集静态文件
python manage.py collectstatic
- 作用:将
static/目录下的所有静态文件收集到STATIC_ROOT目录。
📌 8. 数据库备份与导入
✅ 8.1 导出数据库数据
python manage.py collectstatic
- 作用:将数据库数据导出为 JSON 格式。
✅ 8.2 导入数据库数据
python manage.py loaddata db.json
- 作用:从
db.json重新导入数据。
📌 9. 生产环境相关
✅ 9.1 运行 Django 服务器(生产模式)
gunicorn myproject.wsgi:application --bind 0.0.0.0:8000
- 需要安装
gunicorn:pip install gunicorn
✅ 9.2 配置 ALLOWED_HOSTS
- 在
settings.py里:ALLOWED_HOSTS = ["mywebsite.com", "127.0.0.1"]
🎯 结论
| 分类 | 常用命令 |
|---|---|
| 创建项目 | startproject、startapp |
| 数据库操作 | makemigrations、migrate、flush、showmigrations |
| 服务器 | runserver |
| 用户管理 | createsuperuser、changepassword |
| Shell 调试 | shell、shell_plus |
| 测试 | test |
| 生产环境 | collectstatic、gunicorn |
相关文章:
[特殊字符] Django 常用命令
🚀 Django 常用命令大全:从开发到部署 Django 提供了许多实用的命令,可以用于 数据库管理、调试、测试、用户管理、运行服务器、部署 等。 本教程将详细介绍 Django 开发中最常用的命令,并提供 示例,帮助你更高…...
mysql中如何保证没有幻读发生
在 MySQL 中,幻读(Phantom Read)是指在一个事务中,两次相同的查询返回了不同的结果集,通常是由于其他事务插入或删除了符合查询条件的数据。为了保证没有幻读,MySQL 主要通过 事务隔离级别 和 锁机制 来实现…...
Golang实践录:go发布版本信息收集
go发布版本信息收集。 背景 本文从官方、网络资料收罗有关go的发布历史概况。主要目的是能快速了解golang不同版本的变更。鉴于官方资料为英文,为方便阅读,使用工具翻译成中文,重要特性参考其它资料补充/修改。由于发布版本内容较多…...
字节跳动AI原生编程工具Trae和百度“三大开发神器”AgentBuilder、AppBuilder、ModelBuilder的区别是?
字节跳动AI编程工具Trae与百度"三大开发神器"(AgentBuilder、AppBuilder、ModelBuilder)在定位、功能架构和技术路线上存在显著差异,具体区别如下: 一、核心定位差异 Trae:AI原生集成开发环境(AI…...
【UCB CS 61B SP24】Lecture 21: Data Structures 5: Priority Queues and Heaps 学习笔记
本文介绍了优先队列与堆,分析了最小堆的插入与删除过程,并用 Java 实现了一个通用类型的最小堆。 1. 优先队列 1.1 介绍 优先队列是一种抽象数据类型,其元素按照优先级顺序被处理。不同于普通队列的先进先出(FIFO)&…...
mapbox高阶,结合threejs(threebox)添加三维球体
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️threebox Sphere静态对象二、🍀使用t…...
QEMU源码全解析 —— 块设备虚拟化(1)
本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM源码解析与应用》 —— 李强,机械工业出版社 详解全虚拟半虚拟及硬件辅助虚拟化技术-百度开发者中心 特此致谢! 序言 本专栏之前的系列文章,讲了很多QEMU/KVM相关知识,其中一部分内容是设备的虚拟…...
IDEA中Git版本回退终极指南:Reset与Revert双方案详解
目录 前言一、版本回退前置知识二、Reset方案:整体改写历史1、IDEA图形化操作(推荐)1.1、查看提交历史1.2、选择目标版本1.3、选择回退模式1.3.1、Soft(推荐)1.3.2、Mixed1.3.3、Hard(慎用)1.3.…...
Flutter 学习之旅 之 flutter 使用 flutter_screenutil 简单进行屏幕适配
Flutter 学习之旅 之 flutter 使用 flutter_screenutil 简单进行屏幕适配 目录 Flutter 学习之旅 之 flutter 使用 flutter_screenutil 简单进行屏幕适配 一、简单介绍 二、简单介绍 flutter_screenutil 三、安装 carousel_slider 四、简单案例实现 五、关键代码 六、补…...
实验一:在Windows 10/11下配置和管理TCP/IP
目录 1.【实训目标】 2.【实训环境】 3.【实训内容】 4.【实训步骤】 1.【实训目标】 1.了解网络基本配置中包含的协议、服务、客户端。 2.了解Windows支持的网络协议及参数设置方法。 3.掌握TCP/IP协议的配置。 2.【实训环境】 硬件环境:每人一台计算机&a…...
基于hive的电信离线用户的行为分析系统
标题:基于hive的电信离线用户的行为分析系统 内容:1.摘要 随着电信行业的快速发展,用户行为数据呈现出海量、复杂的特点。为了深入了解用户行为模式,提升电信服务质量和精准营销能力,本研究旨在构建基于 Hive 的电信离线用户行为分析系统。通…...
Rust WebAssembly 入门教程
一、开发环境搭建 1. 基础工具安装 # 安装 Rust curl --proto https --tlsv1.2 -sSf https://sh.rustup.rs | sh# 安装 wasm-pack cargo install wasm-pack# 安装开发服务器 cargo install basic-http-server# 安装文件监听工具 cargo install cargo-watch2. VSCode 插件安装…...
部署RabbitMQ集群详细教程
部署RabbitMQ集群详细教程 下面是一份在 Ubuntu 环境下部署 RabbitMQ 集群的详细步骤说明,涉及主机名设置、Erlang & RabbitMQ 安装、管理插件启用、集群通信 Cookie 配置、节点加入集群、镜像队列策略设置以及集群验证等。为了演示方便,以下示例假…...
20250306JIRA添加企业微信邮箱通知
文章目录 一,参考链接如下二,补充内容1,登录企业邮箱2,设置密码3,设置收发信设置 一,参考链接如下 参考链接:https://blog.csdn.net/icett/article/details/142520823 二,补充内容…...
代码随想录算法训练营第五十七天 | 101. 孤岛的总面积 102. 沉没孤岛 103. 水流问题 104.建造最大岛屿
101. 孤岛的总面积 题目链接:KamaCoder 文档讲解:代码随想录 状态:AC Java代码: import java.util.*;class Main {static int count 0;static int res 0;static boolean island true;public static int[][] dir new int[][]{…...
llamafactory大模型微调教程(周易大模型案例)
1.环境说明 操作系统:ubuntu 20 基础模型:Qwen2.5-1.5B-Instruct 工具:llamafactory GPU:四张4090 2、环境部署 2.1 下载基础模型 # 1、下载 modelscope pip install modelscope#2、模型下载 cd /data/ cat >> download…...
excel 斜向拆分单元格
右键-合并单元格 右键-设置单元格格式-边框 在设置好分割线后,你可以开始输入文字。 需要注意的是,文字并不会自动分成上下两行。 为了达到你期望的效果,你可以通过 同过左对齐、上对齐 空格键或使用【AltEnter】组合键来调整单元格中内容的…...
【JAVA架构师成长之路】【JVM实战】第2集:生产环境内存飙高排查实战
课程标题:生产环境内存飙高排查实战——从堆转储到代码修复的15分钟指南 目标:掌握内存泄漏与OOM问题的系统性排查方法,快速定位代码或配置缺陷 0-1分钟:问题引入与核心现象 线上服务内存持续增长,触发频繁Full GC甚至OOM(OutOfMemoryError),导致服务崩溃。常见诱因:…...
MATLAB实现遗传算法优化风电_光伏_光热_储热优化
1. 问题定义 目标:最小化输出负荷与需求负荷的偏差平方和。决策变量:每个时间步长的风电、光伏、光热和储热输出功率。约束条件: 风电、光伏、光热的输出功率不得超过其最大容量。储热系统的输出功率(充放电)不得超过…...
JCRQ1河马算法+四模型对比!HO-CNN-GRU-Attention系列四模型多变量时序预测
JCRQ1河马算法四模型对比!HO-CNN-GRU-Attention系列四模型多变量时序预测 目录 JCRQ1河马算法四模型对比!HO-CNN-GRU-Attention系列四模型多变量时序预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 基于HO-CNN-GRU-Attention、CNN-GRU-Attent…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
