7. Django操作指令
PyCharm 提供一个 运行 manage.py 的工具
安装之后点击 Terminal, 直接运算 manage.py 文件, 然后只需要在执行的命令即可.
* 1.在PyCharm的Terminal中输入help 查看manage.py 命令行工具的子指令信息:
工具启动:
manage.py@Django_1 > help
手动运行:
python manage.py help
D:\Python\Python3.8\python.exe "D:\Pycharm\2021.3.1\PyCharm 2021.3.1\plugins\python\helpers\pycharm\django_manage.py" help D:/Django_test/Django_1
Tracking file by folder pattern: migrations
Type 'manage.py help <subcommand>' for help on a specific subcommand.
Available subcommands: 可以子命令
[auth]
changepassword: 修改内置用户表的用户密码
createsuperuser: 为内置用户表创建超级管理员账户
[contenttypes]
remove_stale_contenttypes: 上湖村数据库中已经不使用的数据表
[django]
check: 检测整个项目是否存在异常问题
compilemessages: 编译语言文件, 用户项目的区域语言设置
createcachetable: 创建缓存数据表, 为内置的缓存机制提供存储功能
dbshell: 进入Django配置的数据库, 可以执行SQL语句
diffsettings: 显示当前settings.py 的配置信息与默认的差异
dumpdata: 导出数据表的数据并以JSON格式存储, 如python manage.py dumpdata app01 > data.json
flush: 清空数据表的数据新
inspectdb: 获取项目所有模型的定义过程
loaddata: 将数据文件导入数据表, 如 python manage.py laddata data.json
makemessages: 创建语言文件, 用于项目的区域语言设置
makemigrations: 从模型对象创建数据迁移文件并保持在App的migrations 文件夹中
migrate: 根据迁移文件的内容, 在数据库中生成相应的数据表
sendtestemail: 向指定的收件人发送测试的点击邮件
shell: 进入Django的shell模式, 用于调试项目功能
showmigrations: 查看当前项目的所有迁移文件
sqlflush: 查看清空数据库的SQL语句脚本
sqlmigrate: 根据迁移文件内容输出相应的SQL语句
sqlsequencereset: 重置数据表递增字段的索引值
squashmigrations: 对迁移文件进行压缩处理
startapp: 创建项目应用App
startproject: 创建新的Django项目
test: 运行App里面的测试程序
testserver: 新建测试数据库并使用改数据库运行项目
[sessions]
clearsessions: 清除会话Session数据
[staticfiles]
collectstatic: 收集所有静态文件
findstatic: 查找静态文件的路径信息
runserver: 在本机计算机上启动Django项目
Process finished with exit code 0
8. 项目显示 Hello Word
在Django项目里实现Hello Word网页.
8.1 路由层
* 1. 在项目名文件夹中的urls.py 中设置路由与数图函数的对应关系.
from django.contrib import admin
from django.urls import path
# 0. 导入项目应用的视图层
from app01 import views
urlpatterns = [
path('admin/', admin.site.urls),
# 1. hello_word 功能的路由匹配
path('hello_word/', views.hello_word)
]
8.2视图层
* 2. 在项目应用app01的views.py 中写视图函数.
from django.shortcuts import render
# Create your views here.
# 0. 打印hello word 的视图函数
def hello_word(request):
# 0.1 返回request参数 与页面
return render(request, 'hello_word.html')
8.3 模板层
* 3. 在tempales文件夹里新建 hello_word.html 模板文件.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>第一个Django项目</title>
</head>
<body>
<h1>Hello Word</h1>
</body>
</html>
在命令提示符窗口创建的项目, 需要在项目目录下自行创建templates文件夹.
settings.py 配置文件 TEMPLATES 中配置模板文件夹的路径
8.4 配置文件
* 4. 项目名文件夹 settings.py 配置文件中
INSTALLED_APPD 中添加项目应用App
* Django 所有的功能都必须在配置文件中设置, 否则在运行项目的时候无法生成相应的功能.
8.5 访问网页
* 5. 启动项目, 并在浏览器中输入: 127.0.0.1:8000/hello_word
8.6 访问过程
1. 在浏览器中访问网址的时候, 该网址在项目名文件下的urls.py文件中找到对应的路由信息.
2. 然后从路由信息里找到对应的视图函数, 视图处理用户请求. 视图函数在项目应用下的views.py视图文件中.
3. 视图函数将处理结果传递到模板文件(xxx.html 文件中), 由模板文件生成网页的内容, 并在浏览器中展示.
9.4 异常调试
PyCharm 无法调试模板文件, 而模板文件需要使用Django的模板语法,
若想调试模板文件, 最有效的方法是查看PyCharm或浏览器提示异常信息.
调试异常需要根据项目运行时产生的异常信息进行分析, 使用浏览器访问路由地址的时候如果出现异常信息,
就可以直接查看异常信息找出错误的位置.
手动在templates下的hello_word模板文件中设置错误语句.
在PyCharm与浏览器上都可看到异常提示信息.
网页正常显示, 而内容与预期不符合, 或部分缺失, 就需要使用浏览的开发者工具对网页镜像分析出来.
p标签信息未展示.
开发者工具查询p便签的代码, {{ value }} 不存在.
模板语法未获取到值,所以不显示.
浏览器开发者工具对于调试AJAX和CSS样式非常有用, 通过生成的网页内容进行分析, 来反向检测代码的合理性.
后面是凑字数, 为什么呢, 我写的内容都写在代码块中, 段落少于10行文章质量低!!!