장고 연구 노트 -2

기본 구성 정보

구성 정보는 주로 프로젝트 settings.py 파일, 기본 구성에 의해 실현된다 :

  • 프로젝트 경로

  • 키 구성

  • 도메인 접속

  • 앱 목록

  • 정적 리소스 구성

  • 구성 템플릿 파일

  • 데이터베이스 구성

  • 미들웨어

  • 캐시 구성

     settings.py的基本配置如下:
    

    여기에 그림 삽입 설명

     上述代码列出了项目路径BASE_DIR、密钥配置SECRET_KEY、调试模式DEBUG、访问权限ALLOWED_HOSTS和App列表INSTALLED_APPS,各个配置说明如下:
     
     ● 项目路径BASE_DIR:        主要通过os模块读取当前项目在系统的具体路径,代码在创建项目时自动生成,通常无需修改。
     
     ● 密钥配置SECURIT_KEY:     是一个随机值,在项目创建的时候自动生成,通常无需修改。主要用于重要数据的加密处理,提高系统安全性。
     
     ● 调试模式DEBUG:           该值为布尔类型。开发局阶段True,项目部署上线改为False。
     
     ● 域名访问权限ALLOWED_HOSTS:设置可访问的域名,默认为空。DEBUG=True同时ALLOWD_HOSTS为空代表项目只允许以localhost或者127.0.0.1在浏览器上访问。DEBUG=False时ALLOWD_HOSTS为必填项,设置为ALLOWD_HOSTS=['xxx.xxx.xxx.xxx']
     
     App列表INSTALLED_APPS,告诉django有哪些App,项目中已有配置信息如下:
    
이름 설명
관리자 내장 백엔드 관리 시스템
인증 내장 된 사용자 인증 시스템
contenttypes 모델 메타 데이터 레코드 프로젝트
세션 세션 세션은 사이트에 액세스하는 사용자 ID 정보 기능
메시지 메시지 프롬프트
staticfiles 정적 자원 경로 찾기
	如果项目中加入了App,需要在INSTALLED_APPS列表中加入App名字,如:

여기에 그림 삽입 설명

정적 자원

静态资源指,网站中不变的文件。静态资源包括CSS文件、JavaScript文件以及图片等资源文件。
	● CSS(层叠样式表)	一种用来表现HTML或XML文件样式的计算机语言。
	● JavaScript        一种直译式脚本语言在HTML网页上使用,用于给网页增加动态功能。
静态文件存放在配置文件settings.py文件上,如下:

여기에 그림 삽입 설명

上述配置将静态资源存放在文件夹static,这个文件夹只能放在App里面。
项目启动时,Django根据静态资源存放路径查找相关文件,查找功能由App列表INSTALLED_APPS的staticfiles实现。
在index App中添加‘python package’并放置文件。

여기에 그림 삽입 설명

启动项目后,浏览器访问:http://127.0.0.1:8000/static/FileName
如果想在djangoDemo的根目录下存放静态资源,可以在settings.py中设置STATICFILES_DIRS属性。
该属性以列表形式表示,设置方式如下:

여기에 그림 삽입 설명

分别在根目录下创建文件夹public_static,在App(index)下创建index_static文件夹。

여기에 그림 삽입 설명
여기에 그림 삽입 설명

모듈 경로

模板是一种较为特殊的HTML文档。这个文档中嵌入了一些Python识别的变量和指令,然后程序解析这些变量和命令,生成完整的HTML网页并返回给用哦过户浏览。

MTV框架中的T。创建项目时,Django已初始化模板配置信息:
이름 설명
백엔드 템플릿 변수를 식별하는 엔진 및 템플릿의 지침
DIRS 경로 템플릿을 설정, 템플릿 위치는 장고에게
APP_DIRS 찾기 여부 응용 프로그램 파일의 템플릿 파일
옵션 일반적으로 수정하지 않고 호출하는 함수의 맥락에서 RequestContex,

여기에 그림 삽입 설명

在项目根目录index下分别创建templates文件夹,并在文件夹下创建index.html和app_index.html

여기에 그림 삽입 설명

根目录templates通常存放共用的模板文件,能够提供各个App的模板文件调用,该模板符合代码重复使用原则,如HTML的<head>部分。
index的templates是存放当前App所需的模板文件。模板配置如下:

여기에 그림 삽입 설명

데이터베이스 구성

选择项目所使用的数据库类型,不同数据库需要设置不同的数据库引擎,数据库引擎用于实现项目与数据库的连接,
Django提供四种数据库引擎:

여기에 그림 삽입 설명

Django除了支持PostgreSQL、Sqlite3、MySQL和Oracle以外,还支持SQLServer和MongoDB的连接。

项目创建时,默认sqlite3数据库,这是一款轻型的数据库,常用于嵌入式系统开发,配置信息如下:

여기에 그림 삽입 설명

如果把上述连接信息修改为MySQL数据库,首先安装MySQL连接模块‘mysqlclient’ ,输入命令:
    在线安装:pip install mysqlclient
    离线安装:pip install --no-index --find-links=file:E:\ mysqlclient-1.4.1-cp37-cp37m-win_amd64.whl

여기에 그림 삽입 설명

 完成mysqlclient模块晚装后,配置settings.py的MySQL连接信息,如下
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190613234049604.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIxMTUzOTk3,size_16,color_FFFFFF,t_70)

미들웨어

中间件是处理Django的request和response对象的过程。当用户在网站中进行某个按钮等操作时,这个动作是用户向网站发送request,
而网站根据操作返回相关内容,这个过程叫response。

여기에 그림 삽입 설명

一般情况下,Django默认的中间件配置均可满足大部分的开发需求。在MIDDLEWARE中添加LocalMiddleware中间件,使得Django内置功能
支持中文显示,如下:

여기에 그림 삽입 설명

中间件说明:
이름 설명
SecurityMiddleware 내장 된 보안 메커니즘 사이트 보안과 통신하기 위해 사용자를 보호하기 위해
SessionMiddleware 세션 세션 기능
CommonMiddleware 처리 요청 정보, 컨텐츠 표준화를 요청
CsrfViewMiddleware 열기 CSRF 보호
AuthenticationMiddleware 내장 된 사용자 인증 시스템을 엽니 다
MessageMiddleware 내장 된 메시지 알림 기능을 설정
XFrameOptionsMiddleware 클릭 재킹 악성 프로그램 방지
LocalMiddleware 중국어 지원

추천

출처blog.csdn.net/qq_21153997/article/details/91909048