Django基本命令(总结)

本文介绍了Django项目的常用命令操作,包括新建项目和app、创建或更改数据库表、使用开发服务器、清空数据库、创建超级管理员、导出导入数据等,还提及了项目环境终端和数据库命令行的使用,方便开发者进行调试和数据操作。

1. 新建一个 django project

1

2

django-admin.py startproject project_name

特别是在 windows 上,如果报错,尝试用 django-admin 代替 django-admin.py 试试

注意 project_name 是自己的项目名称,需要为合法的 Python 包名,如不能为 1a 或 a-b。

2. 新建 app

要先进入项目目录下,cd project_name 然后执行下面的命令(下同,已经在项目目录下则不需要 cd project_name)

1

2

python manage.py startapp app_name

或 django-admin.py startapp app_name

一般一个项目有多个app, 当然通用的app也可以在多个项目中使用。

与项目名类似 app name 也需要为合法的 Python 包名,如 blog,news, aboutus 等都是合法的 app 名称。

3. 创建数据库表 或 更改数据库表或字段

1

2

3

4

5

6

7

8

9

Django 1.7.1及以上 用以下命令

# 1. 创建更改的文件

python manage.py makemigrations

# 2. 将生成的py文件应用到数据库

python manage.py migrate

 

 

旧版本的Django 1.6及以下用

python manage.py syncdb

这种方法可以在SQL等数据库中创建与models.py代码对应的表,不需要自己手动执行SQL。

备注:对已有的 models 进行修改,Django 1.7之前的版本的Django都是无法自动更改表结构的,不过有第三方工具 south,详见 Django 数据库迁移 一节。

4. 使用开发服务器

开发服务器,即开发时使用,一般修改代码后会自动重启,方便调试和开发,但是由于性能问题,建议只用来测试,不要用在生产环境。

1

2

3

4

5

6

7

8

9

10

11

python manage.py runserver

 

# 当提示端口被占用的时候,可以用其它端口:

python manage.py runserver 8001

python manage.py runserver 9999

(当然也可以kill掉占用端口的进程,具体后面有讲,此处想知道的同学可查下 lsof 命令用法)

 

# 监听机器所有可用 ip (电脑可能有多个内网ip或多个外网ip)

python manage.py runserver 0.0.0.0:8000

# 如果是外网或者局域网电脑上可以用其它电脑查看开发服务器

# 访问对应的 ip加端口,比如 http://172.16.20.2:8000

5. 清空数据库

1

python manage.py flush

此命令会询问是 yes 还是 no, 选择 yes 会把数据全部清空掉,只留下空表。

6. 创建超级管理员

1

2

3

4

5

6

python manage.py createsuperuser

 

# 按照提示输入用户名和对应的密码就好了邮箱可以留空,用户名和密码必填

 

# 修改 用户密码可以用:

python manage.py changepassword username

7. 导出数据 导入数据

1

2

python manage.py dumpdata appname > appname.json

python manage.py loaddata appname.json

8. Django 项目环境终端

1

python manage.py shell

如果你安装了 bpython 或 ipython 会自动用它们的界面,推荐安装 bpython。

这个命令和 直接运行 python 或 bpython 进入 shell 的区别是:你可以在这个 shell 里面调用当前项目的 models.py 中的 API,对于操作数据,还有一些小测试非常方便。

9. 数据库命令行

1

python manage.py dbshell

Django 会自动进入在settings.py中设置的数据库,如果是 MySQL 或 postgreSQL,会要求输入数据库用户密码。

在这个终端可以执行数据库的SQL语句。如果您对SQL比较熟悉,可能喜欢这种方式。

10. 更多命令

1

终端上输入 python manage.py 可以看到详细的列表,在忘记子名称的时候特别有用。

<think>好的,我现在需要回答用户关于Django中startproject命令的用法的问题。首先,我得回忆一下Django基本结构和这个命令的具体作用。根据用户提供的引用内容,startproject用于创建Django项目的基本结构,包含manage.py、settings.py等关键文件。接下来,我要确保回答符合系统级指令的要求。所有行内数学表达式要用$...$,但这里可能不需要数学公式,所以重点放在正确使用LaTeX格式的中文回答。同时,生成相关问题,并正确添加引用标识。 用户的问题集中在startproject的作用和使用方法,我需要详细说明命令的语法、参数以及生成的文件结构。例如,引用[1]和[2]提到项目目录中的各个文件,如manage.py、settings.py、urls.py等,这些都需要解释清楚。另外,用户示例中的快速排序部分展示了如何结构化回答,包括代码块和相关问题。我需要模仿这个结构,先解释命令的作用,然后给出代码示例,再列出相关问题。例如,可以展示命令行中的使用示例,如django-adminstartprojectmysite。还需要注意引用标识的位置,确保每个引用的部分末尾自然添加。例如,在提到项目结构时,引用[1]和[4]中的内容,说明各个文件的作用,并在句尾加上[^1][^4]。 最后,生成的相关问题要围绕startproject的扩展应用,比如自定义项目模板、与startapp的区别、常见错误处理等,帮助用户进一步学习。这些问题需要基于用户可能的疑问点,结合Django的常见使用场景来设计。总结步骤:1.解释startproject的作用;2.说明使用方法,包括命令语法和参数;3.详细描述生成的文件结构;4.给出示例代码;5.列出相关问题;6.正确添加引用标识。同时确保使用中文,结构清晰,符合用户可见层的要求。</think>### Django startproject命令的作用和使用方法 Django的`startproject`命令用于创建新项目的**基础目录结构**,包含项目配置、管理工具和核心文件。以下是详细说明: #### 一、核心作用 1. **初始化项目框架** 生成标准的Django项目目录结构,包含配置文件、URL路由入口和WSGI接口[^1][^4] 2. **创建管理入口** 生成`manage.py`文件,作为项目管理的命令行工具入口[^3][^4] 3. **预置配置模板** 自动创建包含`settings.py`(项目设置)、`urls.py`(URL配置)等标准配置文件[^1][^2] #### 二、使用方法 ```bash # 基础语法 django-admin startproject [项目名称] # 指定项目路径 django-admin startproject mysite /path/to/custom_directory # 使用自定义模板(Django 3.1+) django-admin startproject --template=https://example.com/template.zip mysite ``` #### 三、生成目录结构 ```text mysite/ ├── manage.py # 项目管理脚本[^2][^4] └── mysite/ ├── __init__.py ├── settings.py # 数据库/时区/应用配置[^1][^4] ├── urls.py # 主URL路由配置[^1][^2] └── wsgi.py # WSGI服务器入口[^1][^4] ``` #### 四、典型应用场景 1. 新建Web项目时初始化框架 2. 基于模板创建标准化项目结构 3. 快速搭建可扩展的MVC架构基础
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值