【Django学习】01 项目创建、结构及命令

系列文章目录

【Django学习】00 系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、Django
  • 二、创建虚拟环境
    • 2.1 virtualenv
      • 2.1.1 安装
      • 2.1.2 创建环境
    • 2.2 激活环境
    • 2.3 安装模块
  • 三、Django项目
    • 3.1 项目创建
    • 3.2 运行项目
  • 四、目录结构
  • 五、基本命令
  • 总结


前言

Django学习的日常记录,算是开一个系列,督促一下自己!
本文主要是关于:
1、虚拟环境virtualenv;
2、Django项目的创建,包括项目创建、应用创建;
3、Django项目的目录结构,以及其各自的作用;
4、项目的基本命令。


一、Django

Django的来头还有Python的基本用法,此处就不做啥记录了,请自行了解。

二、创建虚拟环境

2.1 virtualenv

virtualenv主要是用于创建独立的Python虚拟环境,它可以将每个项目与其他项目分隔开了,不同项目之间互不影响,同时也解决了依赖包版本冲突等问题。

2.1.1 安装

pip install virualenv

若安装超时报错,则可指定国内源:

pip install virualenv -i https://pypi.tuna.tsinghua.edu.cn/simple

2.1.2 创建环境

创建Django的虚拟环境

virtualenv env_django

上面env_django是虚拟环境的名称,可自由命名。

若是想指定Python版本,则在创建虚拟环境时需指定一下:

virtualenv env_django --python=python3.7

2.2 激活环境

在进入到虚拟环境的Scripts目录下执行activate以激活环境。

activate

【Django学习】01 项目创建、结构及命令_第1张图片
激活环境成功后,在路径最前面会有个标志:(env_django),表示的就是你当前在该虚拟环境下,即此时你是进入到了该虚拟环境中。
若此时你要pip install模块或者python执行某些py程序,安装的模块便是直接安装到该虚拟环境中,执行py程序也是使用该虚拟环境中现有python解释器和已有模块来配合执行的。

退出环境:

deactivate

2.3 安装模块

激活环境后在该环境下安装所需模块,如django等

pip install django

若遇连接超时问题,可同样使用上文中提到的方法,那就是指定国内源:

pip install django -i https://pypi.tuna.tsinghua.edu.cn/simple

三、Django项目

3.1 项目创建

虚拟环境、Django模块安装完成后,此时我们来开始创建Django项目。

Django项目的创建可以有两种方式:
1)PyCharm直接创建
可使用PyCharm(专业版)创建Django项目工程,但需注意的是在创建时要勾选对应的虚拟环境(选择对应虚拟环境目录中Scripts里的python.exe),使用其对应的Python解释器(包含相关模块)。
2)命令行方式
激活虚拟环境,进入到项目文件待存放目录中,输入以下命令创建项目:

django-admin startproject projectName

3.2 运行项目

项目创建完成后,这边先简单地直接运行一下。

CMD进入到Django项目根目录下,执行python manage.py runserver

>> python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
...
Django version 3.2.13, using settings 'djProject.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

待终端输出以上内容后,打开浏览器输入:http://127.0.0.1:8000/,页面显示如下即为项目运行成功且访问到页面。
【Django学习】01 项目创建、结构及命令_第2张图片
上文中直接执行runserver,默认是在8000端口;若需指定其他端口,则需要在后面跟上指定端口号:

>> python manage.py runserver 5555

此时浏览器端访问网站页面时,输入的就是http://127.0.0.1:5555,对应端口号得一致。

四、目录结构

【Django学习】01 项目创建、结构及命令_第3张图片
项目创建完成后,其目录初始结构如上图。

djProject/                      # 创建的项目
	djProject/		            # 项目同名目录,该目录下包含项目的基本配置、路由等
		__init__.py             # 包初始化文件
		asgi.py				    # 异步服务网关接口
		settings.py             # 配置文件,可配置项目的数据库、模板、时区等
		urls.py                 # 路由文件,存放路由与视图函数的对应关系
		wsgi.py			        # Web服务器网关接口
	db.sqlite3			 	    # Django默认的数据库文件(SQLite3),在未配置其他数据库情况下运行项目时会自动生成
	manage.py		  	  	    # Django的命令行工具文件,内置多种方式与项目进行交互

我们常关注的两个文件是:settings.pyurls.py。一个是Django项目的配置文件,可注册应用、注册中间件、配置数据库、配置模板等等;另一个是项目的主路由文件,主要是关于用户访问地址(路由)与程序处理函数(视图函数)之间的映射关系。
另一个需要注意的文件是manage.py,它是Django项目中自动生成的用于管理项目的脚本文件,其接受的是Django的内置指令,具体使用可见下文。

五、基本命令

这里放几个常用的基础命令,主要就是对Django项目的一些管理操作。

python manage.py runserver			   # 运行项目,前文已介绍过
python manage.py startapp app_name     # 创建应用,应用可以理解为功能组成部分,可以是一个用户应用,包含注册登录等功能;也可以是博客应用,包含编辑博文、显示博文信息等功能。应用具体的使用后面再介绍。
python manage.py makemigrations		   # 生成数据库迁移文件(针对应用中的models.py文件)
python manage.py migrate			   # 根据迁移文件进行迁移(在数据库中建表或修改表)
python manage.py shell				   # shell环境
python manage.py createsuperuser	   # 创建admin后台管理系统的超级用户,在初次登录后台时需创建

还有个命令,后面项目打包整理时会用到,这里也放一下。

在项目根目录下执行,将当前虚拟环境中所有的包名(除初始环境下已存在的包)及版本号整理输出到txt文件中。

pip freeze > requirements.txt

生成的requirements.txt文件及其内容:
【Django学习】01 项目创建、结构及命令_第4张图片
后续在项目迁移到其他环境中时,可直接通过requirements.txt文件安装上项目所需的指定版本的Python模块包,便于项目程序能够正常运行。

pip install -r requirements.txt 

总结

以上就是我对在Django学习中涉及到的虚拟环境、模块安装、项目创建、目录结构以及基本命令的简单理解。

你可能感兴趣的:(#,Django,django,python)