[赫兹威客][Python开发教程] Django 基础命令解析:新手入门必备(附实操示例)

Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

作为 Django 新手,最先接触的就是命令行工具—— 无论是创建项目、操作数据库,还是启动开发服务器,都需要通过命令完成。本文会按 “开发流程” 分类,讲解最常用的 Django 基础命令,搭配实战示例和避坑指南,帮你快速上手。

一、 项目初始化命令: 创建项目

django-admin startproject:创建 Django 项目

作用:生成一个完整的 Django 项目目录(包含配置文件、命令入口等)。

语法:django-admin startproject 项目名 

示例(创建名为my_django的项目)

(1)在cmd中创建:

我新建了一个空的文件夹:


在这个目录下打开cmd:

激活我的conda环境:

输入命令:

django-admin startproject my_django


这样项目就创建好了:


生成的项目结构

my_django/ # 项目根目录

├── my_django/ # 项目核心配置目录

│ ├── __init__.py

│ ├── settings.py # 项目全局配置(数据库、应用、静态文件等)

│ ├── urls.py # 项目主路由(URL映射)

│ ├── asgi.py # ASGI协议配置(用于生产环境)

│ └── wsgi.py # WSGI协议配置(用于生产环境)

└── manage.py # 项目命令入口(日常开发核心)

在PyCharm中查看:

(2)在PyCharm终端创建:

在PyCharm中打开终端:

激活conda环境:

输入创建的命令:

django-admin startproject my_django

这样就创建好了:

避坑点

  • 项目名不要用django或 Python 内置关键字(如test),否则会冲突;
  • 若执行命令提示 “django-admin 不是内部命令”,检查:① 虚拟环境是否激活;② Django 是否安装(pip list查看)。

二、 应用管理命令:创建APP

Django 用 “应用(App)” 拆分功能(如 “用户模块”“文章模块”),每个应用是独立的功能单元。

2.1 python manage.py startapp:创建应用

作用:生成一个应用目录(包含模型、视图、路由等文件)。

语法:python manage.py startapp 应用名

示例(创建 “文章模块” 应用article)

(1)在cmd中创建:

先切换到创建的django项目的根目录下:

输入出来app的命令:

python manage.py startapp article

这样就创建成功了:

生成的应用结构

article/ # 应用目录

├── __init__.py

├── admin.py # 应用Admin后台配置

├── apps.py # 应用基本信息

├── migrations/ # 数据库迁移文件(记录模型变更)

├── models.py # 数据模型(ORM核心)

├── tests.py # 单元测试

└── views.py # 视图函数(业务逻辑)

(2)在PyCharm终端创建:

PyCharm终端操作是和cmd一样的,切换到项目根目录后,直接输入命令就好了:

cd my_djanngo
python manage.py startapp article

2.2  关键步骤:注册应用

创建应用后,必须在settings.py中注册,否则 Django 无法识别该应用的模型、路由等。

打开my_django/settings.py,在INSTALLED_APPS列表中添加应用名:

INSTALLED_APPS = [

'django.contrib.admin',

'django.contrib.auth',

# ... 其他默认应用

'article', # 新增:注册article应用

]

三、 数据库核心命令:数据迁移

Django 的 ORM(对象关系映射)允许用 Python 类(Model)操作数据库,无需写 SQL。以下命令是 Model 与数据库同步的核心。

3.1 python manage.py makemigrations:生成迁移文件

作用:检测 Model 的变更(如新增字段、修改字段类型),生成 “迁移文件”(记录变更内容,存放在应用的migrations/目录)。

语法:

# 为所有应用生成迁移文件

python manage.py makemigrations

# 只为指定应用生成迁移文件(推荐,避免冗余)

python manage.py makemigrations 应用名

示例(为article应用的 Model 生成迁移)

(1) 先在article/models.py中定义一个文章模型:

from django.db import models

class Article(models.Model):

    title = models.CharField(max_length=100, verbose_name="文章标题")

    content = models.TextField(verbose_name="文章内容")

    create_time = models.DateTimeField(auto_now_add=True, verbose_name="发布时间")

(2)执行以下命令,生成迁移文件:

python manage.py makemigrations article

执行后,article/migrations/会新增一个类似”0001_initial.py“的文件(记录 Model 的初始结构):

    避坑点

    • 迁移文件不要手动修改,否则可能导致数据库同步失败;
    • 若 Model 变更后生成迁移报错,检查字段参数是否合法(如CharField必须加max_length)。

    3.2 python manage.py migrate:执行迁移(同步数据库)

    作用:读取迁移文件,将 Model 的变更同步到数据库(创建表、修改字段等)。

    语法:

    # 执行所有未执行的迁移文件

    python manage.py migrate

    # 只为指定应用执行迁移

    python manage.py migrate 应用名

    示例(同步article应用的 Model 到数据库)

    python manage.py migrate article

    效果

    Django 会自动在数据库中创建article_article表(默认表名:应用名_模型名),无需手动写CREATE TABLE语句。

    四、 开发服务器命令:实时调试项目

    Django 内置开发服务器,支持代码修改后自动重载,适合开发阶段使用。

    python manage.py runserver:启动开发服务器

    作用:启动本地开发服务器,默认地址127.0.0.1:8000

    语法

    # 默认地址(127.0.0.1:8000)

    python manage.py runserver

    # 自定义端口(如8080)

    python manage.py runserver 8080

    # 允许外部设备访问(如手机、其他电脑)

    python manage.py runserver 0.0.0.0:8000

    示例

    python manage.py runserver

    执行后,终端会显示:

    
    

    打开浏览器访问http://127.0.0.1:8080/,看到 Django 默认欢迎页即成功。

    避坑点

    • 端口被占用时,换一个端口(如8081);
    • 开发服务器不要用于生产环境(性能差、不安全)。

    五、 用户与权限命令:管理后台用户

    Django 内置 Admin 后台,需创建超级用户(管理员)才能登录,以下是用户管理核心命令。

    5.1 python manage.py createsuperuser:创建超级用户

    作用:创建具有管理员权限的用户(可登录/admin后台)。

    语法:python manage.py createsuperuser

    示例

    执行命令后,按提示输入用户名、邮箱、密码(邮箱可回车跳过,密码输入时不显示,输完按回车即可):

    python manage.py createsuperuser

    效果

    创建后,访问http://127.0.0.1:8000/admin,用刚创建的用户名和密码登录,即可管理数据库中的数据(如Article模型的文章)。

    5.2 python manage.py changepassword:修改用户密码

    作用:快速修改指定用户的密码(无需记住原密码)。

    语法:python manage.py changepassword 用户名

    示例(修改admin用户的密码)

    python manage.py changepassword admin

    按提示输入旧密码,再输入新密码即可(我这里输入的新密码太短,重新输入了一次新密码)。

    六、总结:必背的核心命令

    新手初期无需记所有命令,先掌握以下高频命令即可:

    1. 项目初始化:django-admin startproject 项目名
    1. 应用创建:python manage.py startapp 应用名
    1. 数据库同步:makemigrations → migrate
    1. 启动服务器:python manage.py runserver
    1. 创建管理员:python manage.py createsuperuser

    建议边开发边对照本文,用多了自然就记住了。后续学习 Django 进阶功能(如 REST API、部署)时,再补充对应的命令即可。

    教程到这里就结束啦,感兴趣的朋友可以加入我们的Q群一起讨论!!!

    教程到这里就结束啦,感兴趣的朋友可以加入我们的Q群一起讨论!!!

    教程到这里就结束啦,感兴趣的朋友可以加入我们的Q群一起讨论!!!

    赫兹威客官方交流群https://qm.qq.com/q/ToiE4c056U

    您可能感兴趣的与本文相关的镜像

    Python3.8

    Python3.8

    Conda
    Python

    Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包
    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值