一、启动前注意事项
- 计算机的名称,以及文件路径不要出现中文;(编码问题)
- 一个窗口只开启一个 Django 项目;
- python 解释器尽量使用 3.4~3.6 版本;
Django 下载版本推荐 1.11 版本
django-admin
二、Django 项目创建与启动
2.1 命令行方式
创建Django项目
django-admin startproject 项目名
Windows 电脑会默认在 C 盘中创建
可以在命令行中先切换路径,再创建。注意路径中尽量不要包含中文
templatessettings.py
具体处理方式参照下方 PyCharm 创建的方法
文件中包含的内容
文件作用介绍
- manage.py
入口文件
项目文件夹
- setting.py
配置文件
- urls.py
路由与视图函数对应关系(路由层,路由分发)
- wsgi.py
wsgiref 模块(不用考虑)
启动Django项目
启动前首先要切换到项目的路径
python3 manage.py runserver IP+端口
python3 这里要注意自己的 python 解释器的版本
IP+端口:可以为空,默认为本机的127.0.0.1 的 IP 端口就是 8000;
创建应用
python3 manage.py startapp 应用名
注意路径要保证是 Django 项目的根目录
文件作用介绍
- database.sqlite3
Django 自带的sqlite3数据库
应用文件夹
- admin.py
Django 后台管理
- apps.py
注册使用
- migrations 文件夹
可以看成sqlite3数据库操作的日志文件夹,里面存放的是数据库迁移记录
- models.py
数据库相关的 模型类( orm )
- test.py
测试文件,没什么用途
- views.py
视图函数—视图层
2.2 PyCharm 方式
创建Django项目
与命令行创建项目方式的区别
创建成功后与命令行方式创建对比
templatessettings.py
相当于:
'DIRS': [os.path.join(BASE_DIR , 'templates')],
templates
Application name
启动Django项目
创建应用
方式一:命令行方式创建,pycharm 自带有Terminal
方式二:PyCharm 工具栏 Tools–Run Manage.py Task
startapp 应用名
三、静态文件配置
templatesstatic
静态文件:前端已经写好的,能够直接调用的文件
已经写好的网站 js 文件、CSS 文件、图片文件、第三方的前端框架
static
staticother
3.1 静态文件资源接口配置
urls.py
静态文件资源的配置就不需要那么麻烦!
settings.py
# 拼接 static 文件夹路径,并且放入列表中
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'static1'),
os.path.join(BASE_DIR, 'static2'),
]
3.2 静态文件接口请求原理
settins.pySTATIC_URL
STATIC_URL = '/static/'
'/static/'static
STATICFILES_DIR
STATIC_URL'/static/''/static/'URL 路径'/static/'STATICFILES_DIR
STATIC_URL
3.3 静态文件实例
settins.py
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'static1'),
os.path.join(BASE_DIR, 'static2'),
]
statica.txt
from static
static1a.txt
from static1
static2a.txt
from static2
启动 Django 项目,并且请求资源
调换一下顺序, 并且修改一下令牌
STATIC_URL = '/xxx/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static2'),
os.path.join(BASE_DIR, 'static1'),
os.path.join(BASE_DIR, 'static'),
]
3.4 HTML 文件动态解析静态文件路径
STATIC_URL
动态解析语法
{% load static %}
<link rel="stylesheet" href="{% ‘ 文件名 ’ %}">
<script src="{% ‘ 文件名 ’ %}"></script>
STATICFILES_DIRS
四、常见问题
4.1 TypeError: unsupported operand type(s) for /: ‘str‘ and ‘str
TypeError: unsupported operand type(s) for /: ‘str‘ and ‘str‘
报错提示:
解决方法:
点击最后一行的报错信息,定位
/,
4.2 PyCharm 修改已经生成的 Django 项目的端口
4.3 后端代码修改了,但是前端页面没有任何变化
有可能,同一个端口开启了好几个项目。比如用命令行和 pycharm 分别开启了,但是pycharm 的代码修改了,依然是按照命令行的方式运行的,所以保证一个项目不要同时被开启
最为常见的还是浏览器缓存的情况了
右键-检查
勾选上之后,只要再次打开控制台时,点击页面刷新就会清除浏览器的缓存