三、Django_MTV
创建项目与应用
一、第一个demo
查找到Django-admin.exe文件(Mac地址:/资源库/Frameworks/Python.framework/Versions/3.6/bin),通过此文件创建Django项目
1、查看Django自带的方法
终端输入Django-admin ,终端会返回Django里面的方法
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate
runserver
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
startproject:创建Django项目
2、创建Django文件
终端输入 django-admin + startproject +文件名
django-admin startproject guest
二、guest项目介绍
1、相关文件介绍
1.1、manage:主文件,下面是manage相对应提供的一些命令(与输入Django-admin下面的命令差不多)
[auth]
changepassword :修改管理员密码
createsuperuser :创建超级管理员账号
[contenttypes]
remove_stale_contenttypes
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate :Django数据库的生成
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp :创建应用
startproject
test :测试
testserver
[sessions]
clearsessions
[staticfiles]
collectstatic
findstatic
runserver :启动Django web项目
1.2、setting :Django的配置文件
1.3、urls :项目资源配置文件(路径的指向文件)
1.4、wsgi.py :项目部署
2、模式
项目host
app的管理
....
3、创建应用(app)
cd 到guest文件中,终端输入 python3 manage.py startapp +文件名
python3 manage.py startapp sign
三、sign(app)项目介绍
1、__init__.py:默认标准的python模块下面的配置文件
2、admin.py :Django自带的admin后台,映射models中的数据到Django自带的admin后台
3、apps.py :在新的Django版本中新增,用于应用程序的配置
4、**models.py:创建应用程序数据表模型(对应数据库的相关操作)
5、tests.py :创建Django测试--单元测试
6、**views.py :控制向前端显示哪些数据--视图
7、migrations :用于记录models中数据的变更
四、运行项目
1、启动项目
cd到相对应的项目路径当中,终端输入:python3 manage.py runserver来启动项目
2、runserver相关介绍
runserver:Django自带的web容器(apache与nginx)
web项目想要运行起来,一定是放在内存里面的,才可以进行访问应用
如上图默认占用的本机端口为8000端口
指定本机的IP:python3 manage.py runserver +IP地址: +(端口号):应用于正式部署的时候
3、页面访问
3.1、访问主页面
浏览器输入:http://127.0.0.1:8000/进行访问,如下图
3.2、访问指定路径
浏览器输入:http://127.0.0.1:8000/index进行访问,如下图
3.3、访问顺序(解析访问路径--制定访问的页面)
4、hello Django简单应用
4.1、通过index来指向
4.2、访问页面
4.3、定义并指向index页面(定义视图函数)
4.4、HttpResponse的引入
4.5、最终展示效果
4.6、默认路径
5、返回一个页面
5.1、创建模板目录templates(尽量保持这个名称,不然需要修改其他配置文件)
5.2、html页面的展示内容
5.3、view里面添加访问为页面访问
6、过程梳理
6.1、web开发中通用的设计模式:
java:spring(框架) MVC(模式)
PHP:coding MVC
ruby:rails MVC
M(Model):数据库 python(sql语句)—》 数据驱动(pymsql/mysqldb:自带的sql)—》 MYSQL
V(view):视图-->web 页面的相关操作
C(control):控制层 路由-->urls.py
Django
MTV
M(Model):数据库 python(sql语句)—》 数据驱动(pymsql/mysqldb:自带的sql)—》 MYSQL
T(template):模板 -->web页面 模板语言
V(view):视图 ,主要的web处理逻辑
五、踩过的坑
1、问题描述
在templates模板里面因为没有添加绝对路径导致报错,报错信息如图1
解决方法
在setting文件里面添加templates的绝对路径,如图2
PS:Google之后依然没理解是什么意思,然后就陷进去坑里面出不来。。。。