本节代码:
https://pan.baidu.com/s/1m7r0fEJC-SfivIZ_-brkmg 提取码:kvox
更多Django资源:
QQ ZHOU:Python+Django入门通关(一)
QQ ZHOU:Python+Django— 入门通关(二)| Models:创建数据库表
QQ ZHOU:Python+Django— 入门通关(二)| Models:创建数据库表(加餐篇)
QQ ZHOU:Python+Django— 入门通关(三)| admin:后台管理界面
本节我们将会和大家讲如何将你想要传达给用户的信息通过Django呈现在界面上,此时,我们需要用到模板。什么是模板?你可以理解为前端固定的形式,形式是可以根据不同需求指定的,但是内容可以变化。就比如你进入淘宝页面,淘宝页面上边固定搜索和旁边是导航页面,中间是商品陈列区位置,但是你每次进入时,陈列的商品都会不一样。所以,模板就是表现的框架,而模板内的数据可以根据需求任意改动。
模板就是前端框架
<
以上代码就是Django模板的内容,我们可以看到除了{{ }}内容,其余的和HTML无本质区别。
那么,{{}} 实则就是模板中关键的信息。如何将我们希望用户看到的内容传到模板中?
上述{{ article_obj.title }}传递的是文章标题和{{ article_obj.content }}传递的是文章内容。
- 还记得我们之前学过views.py文件时响应函数和返回响应界面的地方吗?回顾一下
QQ ZHOU:Python+Django— 入门通关(二)| Models:创建数据库表
中 views.py的内容。
# views.py
以上是将文章的标题传给title,内容传递给content,最后通过Http响应返回到前端。
此处,我们只需要将Http响应改写为render函数,将需要传递的内容指向特定html路径即可
# views.py
注意:html接收响应对象是字典形式,因此context必须写成字典。
2. 同时在该应用下创建templates文件夹,在templates/下创建html文件,命名为:articleDetail.html. 即上述render_to_response 的第一个参数。
3. 打开templates/articleDetialail.html 文件,编辑如下:
<
其中,article_obj为context的key,模板文件接收参数的方式即{{ key.*** }}
4. 修改url.py文件
from
我们可以看到,文章内容详情的路径为myfrtsite/article_detail/,后面是<int:article_id>是具体哪篇文章的参数,和views.py中参数名称一致。因此,在myfrtsite/article_detail/1可获取数据库中第一篇文章内容,myfrtsite/article_detail/2可获取数据库中第二篇文章内容...
5.最后,我们打开服务器
python
再次,更改上面127.0.0.1:8000/myfrtsite/article_detail/ 后面的数字试试看,你会发现当数据库没有文章后,会报错(处理错误的方法在代码中写明,这里不再赘述)。
修改后,如果输入的文章id超过范围,会报404错误
6. 如何在后台管理器中增加 文章?
打开admin界面-MYFSTSITE-增加
保存后,你的数据模型中就会增加一篇文章。
后续,我们会对这个界面进行改造,今天就讲到这里哈~下节课将会带大家将这个代码发布到公网。是不是有点小激动~ 让我们创建第一个属于自己的网站啦~
在此,再次感谢杨老师的视频教程,我本人就是按照这个视频一点一点积累的。上述的代码也是按照教程步骤来的,如果有童鞋自己不愿意写代码,可以参照我写的代码。最后,建议大家还是要看下杨老师的教程 。
哔哩哔哩 ( ゜- ゜)つロ 乾杯~ Bilibilispace.bilibili.com您的 支持是我努力提供更多更优质内容的动力,感谢点赞~