学习了很久Django,总是在前端和后端之间徘徊,无法推进,今天系统性的整理学习进度,并记录(我的Django版本是3.1.2)。
1、建立一个标准的开始程序,并设定中文。
pip3 install django # 安装Django模块
# 找到一个或新建一个目录并进入
django-admin startproject MyDjango # 新建一个Django程序
cd MyDjango # 进入目录
python3 manage.py runserver # 运行服务器程序
在浏览器地址栏打开: http://127.0.0.1:8000/
显示这个画面,就表示第一步启动成功了,然后还要做一些设置,在 guest 目录下有个 settings.py 的文件,打开修改(都是小写就可以)
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/shanghai'
保存文件后刷新页面即可,如果中间输入有错,web server停止运行,再执行 python3 manage.py runserver 即可。
看到这个页面,表示中文设置完成。
2、新建一个我自己的应用,Hello Django
我们计划构造一个链接 http://127.0.0.1:8000 的页面,显示 Hello Django 的字样。
python3 manage.py startapp index # 建立一个叫 index 的应用,同时建立本地文件夹。
在项目的根目录,新建一个目录 templates 用于存放文档模板,文档模板为Django的核心框架,后期的动态页面基本依靠此目录实现,如图:
在setting.py 中添加 index 应用,并将 templates 目录写入系统检查的目录,这里需要在文件头部引入os模块,如下图:
templates目录是模板目录,放置符合Django语法的页面模板文件。
import os
我的pycharm 自动生成了下面这段代码,貌似也是可以的,记录下,不过现在书上大多还是os.path.join的格式,我的Django版本是3.1.2
'DIRS': [BASE_DIR / 'templates']
打开 MyDjango 根目录下的 urls.py 文件,写入请求的url,如下图:
第一句 from index.views import index 是在index目录下找 views.py 文件,并申请文件里的 index函数,这个函数对应默认请求。在index目录下的views.py 文件中新增 函数 index,当调用这个函数后,返回 index.html 文件,系统会在默认的路径里查找,其中包括刚刚建立的 templates 目录。
在templates 目录下新建 index.html 文件,内容如下:
这时运行程序 python3 manage.py runserver, 显示如下界面
如果简单的不使用模板,只返回内容,则如下写入views.py 文件,调用 HttpResponse函数
页面将不带各种 style ,如图所示:
至此第二阶段完毕,总结,流程如下:
1、使用命令行新建应用目录,并在settings.py 中添加应用名称;
2、因为指向了具体文件,故新建 templates 目录,并在setting.py文件中定义;
3、在根目录下 urls.py 中添加url的信息,指向index的views.py 文件进行解析,并制定函数;
4、index/views.py 新增函数,将请求转发至 templates目录下的 index.html文件;
5、新增index.html 文件,写入具体内容;
6、刷新后台服务程序,访问地址 127.0.0.1,即可看到变化;
知识点:django的访问流程是:添加应用 ==> 修改urls.py ==> views.py ==> xxx.html 重复这个过程即可