CORS、日志logging
1)聊一聊为什么要集体管理django项目的应用app,如果用子文件夹集中管理了应用app,如何实现app可以直接在settings中注册
一个成型的Django项目,会有很多功能模块,每一个功能模块对应一个app管理,所以导致项目由众多app,集中管理,结构更清晰,代码更规范。
例如用apps文件夹集中管理app,要将apps文件夹在settings配置中添加到环境变量,apps下的应用都是对Django项目直接可见,所以可以直接注册
2)谈谈项目为什么要记录日志文件,记录的级别有什么要求
开发中有控制台辅助开发,但是项目上线后,没有控制台辅助查看程序实时运行信息,但难免运行中出现了问题,且这些问题需要被记录下来,以便优化程序或修改bug。所以可以将重要的信息或错误的信息记录到日志文件中进行永久保存(会定期定量清楚过老的日志)
3)就存在的删库跑路,如何在数据库层面对程序员数据库开发这块进行管控
为开发者创建满足开发需要的低权限数据库账号(只能操作某些数据库、只能操作某个数据库的某些表)
4)前后台分离项目交互时,如果出现了CORS,代表什么?如何解决
1)服务器已经接收到了客户端请求
2)服务器发现客户端非同域客户端(不是自家的)(ip、port、协议存在不一致)
3)服务器不对客户端做需要响应,而是一种CORS错误响应(就是在响应头中做文章)
处理CORS错误响应的本质:处理响应头
5)日志logging
i)import logging 是Python解释器自带的(os、sys)
ii)django项目加载settings配置,加载了LOGGING的配置字典,加载了配置中的所有logger
logger(打印者)会有handler(输出位置),handler会有formatter(打印格式)和filter(信息过滤器)
iii)提供logging模块的getLogger('logger名')方法来获取打印者,调用日志打印功能
iv)打印级别有5种:debug、info、warning、error、critical,自己根据需求选择,你将要打印的信息定义为什么级别,你就采用什么级别进行打印
v)handler可以设置收纳的级别信息,如果file handler设置了收纳级别为WARNING,那用logger完成五种几个的各一个信息打印,只有warning及以上级别会被记录到file中
django项目执行迁移数据库时遇到的问题:


解決方法:
刪除每個app文件下migrations文件中所有文件(除了__init__.py),然後再執行python manage.py makemigrations重新生成遷移
怎样显示隐藏文件夹
1

2

swiper 插件是专门做轮播图的 移动端,pc端都行


浙公网安备 33010602011771号