Django快速入门篇
Django官网
https://docs.djangoproject.com/zh-hans/4.2/
官方介绍
官方版本 推荐LTS版本,python3.9/3.10
-
djongo 每两年会出一个LTS版本
-
关于环节djongo,conda直接安装即可
conda create -n myenv python=3.9
conda activate myenv
pip install djongo==4.2
在这里插入图片描述
一.快速开始
django-admin startproject HelloDjango
前两个前缀是既定操作,django-admin startproject
+ 项目名称
若pycharm无法正常创建,暂时忽略,后续处理!
- 失败原因:未选择含有django的环境、版本不兼容等问题
命令行创建user模块
python manage.py startapp user
二. Djongo相关文件表述
-
1.mange.py:是Django管理项目命令行工具,尽量不要更改;
-
2.init.py表述包
-
3.settings.py配置文件
-
4.urls.py路由映射
-
5.wsgi.py在服务器上的部署和上线,一般不需要修改。
-
6.asgi.py定义ASGI的接口信息;Django3.0后的新增内容,目的是为了高并发做出优化,新增ASGI相比WSGI实现异步处理,用于异步通信服务;
项目开发时,主要用到urls,settings
三.settings.py详细讲解
BASE_DIR = Path(__file__).resolve().parent.parent
- _ _ file_ _ 表示当前文件
- Path(_ _ file _ _ )表示获取当前文件路径对象
- Path(_ _ file _ _ ).resolve(),表示调用resolve方法,获取 路径对象绝对路径
- .parent.parent表示…/…/等意思、
pathSample = BASE_DIR / 'your_path_dir' #获取your_path_dir的路径地址
-
3.其他
# TODO 2.密钥不用管,内部加密使用 # SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = "django-insecure-ow94kud3hn2!3!aph8srr=(!!8-qwse$-h=^c_ifpsi1i)lw(*"# TODO 3.是否使用调试模式,一般用于 """True 调试过程-开发False 非调试-上线 """ # SECURITY WARNING: don't run with debug turned on in production! DEBUG = True# TODO 4.被允许的服务器域名 ALLOW_HOSTS """统配:* """ # ALLOWED_HOSTS = [] ALLOWED_HOSTS = ['*']
-
4.定义app
-
INSTALLED_APPS需要定义自己的APP和Django定义的app
-
MIDDLEWARE中间件
-
ROOT_URLCONF根路由路径,
-
TEMPLATES模板
-
WSGI_APPLICATION wsgi目录
-
DATABASES数据库默认sqlite3
-
AUTH_PASSWORD_VALIDATORS
-
Internationalization国际化
-
STATIC_URL静态文件地址
四.启动
# 指定端口
python manage.py runserver 8080 # 访问 http://127.0.0.1:8080# 指定 IP 和端口(用于局域网访问)
python manage.py runserver 0.0.0.0:8000 # 允许所有 IP 访问 并且settings.ALLOWED_HOSTS=['*']
五.数据迁移
- migrante的概念就是将模型映射到数据库的过程
迁移的命令:
- 生成迁移文件
python manage.py makemigrations
- 执行迁移
python manage.py migrate
- 1.创建一个user的模块
python manage.py startapp user
- 2.执行迁移
python manage.py makemigrations
python manage.py migrate
- 3.将db.sqlite3一致Database创建数据库刷新即可;