"万里风波一叶舟,忆归初罢更夷犹"

该教程旨在了解和简单使用Django,各组件用法后续可以深入学习,为有需要的学习者建立Django框架的整体概念,不对之处可以指出,交流进步。

一、安装

1、选择版本



二、Django安装、配置、启动服务【python 之 Django入门教程 】_django


 根据支持矩阵,使用3.2版本django,这里python版本选择3.9。

2.安装

python3.9

https://www.python.org/ftp/python/3.9.0/python-3.9.0b4-amd64.exe

django 3.2.7

python -m pip install Django==3.2.7

> python -m  django   version

3.2.7

二、创建项目
django-admin startproject poem


 二、Django安装、配置、启动服务【python 之 Django入门教程 】_django_02

三、启动项目

cd poem

python manage.py runserver

四、浏览器访问

 http://127.0.0.1:8000/

二、Django安装、配置、启动服务【python 之 Django入门教程 】_django_03


 五. 配置


1.配置文件settings.py


2.数据库

数据库如果要是有postgresql,可以如下配置

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': '数据库名',
'USER': '用户',
'PASSWORD': '密码',
'HOST': '数据库地址',
'PORT': '5432'
}
}


#模板设置

TEMPLATES = [

{

'BACKEND': 'django.template.backends.django.DjangoTemplates',

'DIRS': [],

'APP_DIRS': True,

'OPTIONS': {

'context_processors': [

'django.template.context_processors.debug',

'django.template.context_processors.request',

'django.contrib.auth.context_processors.auth',

'django.contrib.messages.context_processors.messages',

],

},

},

]

# 数据库配置,默认使用内置的sqlite3数据库

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.sqlite3',

'NAME': BASE_DIR / 'db.sqlite3',

}

}


# 静态文件配置 img、js、css ,文件中引入静态文件时,使用/static/资源名来访问资源,而不需要绝对路径,作用是统一、方便使用。

STATIC_URL = '/static/'

根据数据库不同,ENGINE可选:


  • ​django.db.backends.postgresql    ​
  • ​django.db.backends.mysql​​            
  • ​django.db.backends.sqlite3​
  • ​django.db.backends.oracle​

3 静态文件路径配置

STATIC_URL  各APP所在模块静态文件位置

引用位于 ​​STATIC_ROOT​​ 中的静态文件时要使用的 URL,配合STATIC_ROOT使用,以STATIC_ROOT定义的路径为根路径,必须以 " / "结尾。

# 这个static 是在Django 具体APP下建立的static目录,用来存放静态资源   img、js、css 。

STATIC_URL = '/static/'

STATICFILES_DIRS 项目通用静态文件位置

例如:

当STATICFILES_DIRS设置如下时,



STATICFILES_DIRS = [
"C:/Users/user/poem/"
]


 STATIC_URL设置为/static/



STATIC_URL = "/static/"


模板中

<a href="{% static 'g1.jpg' %}">

引用的文件为:C:/Users/user/poem/static/g1.jpg 

即:   {{STATICFILES_DIRS}} {{STATIC_URL}} {{模板中引用资源}}

{% load static %} <img src="{% static 'g1.jpg' %}" alt="My image">

4查找文件优先级:

首先到STATICFILES_DIRS里面寻找静态文件,其次再到各个app的static文件夹里面找也就是STATIC_URL定义的路径 。

STATICFILES_DIRS > STATIC_URL