Django中的视图和路由
在上一篇博客中,介绍了Django中视图和路由基本的使用方法,这篇博客实现一个简单的小项目,对于之前的基础知识进行巩固。练习的项目借助豆瓣平台提供的API来完成,实现根据音乐名称对音乐进行查询的功能。具体而言,可以理解为,我们的平台是一个中转服务器,接收来自浏览器的输入数据,然后根据该输入数据在豆瓣平台中进行查询,然后将查询结果返回给浏览器(客户端),大致的流程如下图所示:
使用到的知识如下:
- Django2中视图和路由的基本知识
- Python中Requests http模块的用法
- 初探RESTful规范写法
下面开始具体的项目实现过程:
1. 创建项目和应用
2. 编辑项目配置
设置时区、语言、注册应用(在api_server/settings.py文件中实现)
3. 实现查询功能的视图函数
在视图函数中,读取来自浏览器的输入,并且调用豆瓣API进行查询(在app_search/views.py中实现)
4. 实现路由和视图的绑定
(1)应用路由和视图函数的绑定(在app_search/urls.py中实现)
(2)应用路由绑定到根路由(在api_server/urls.py中实现)
5. 启动服务,在Python交互窗口中进行访问
因为返回的是Json数据,我们这里没有使用前端模板进行渲染,所以直接在Python交互窗口中进行我们中转服务器的访问。操作如下:
上面的访问过程,可以看出,我们的中转服务器可以正常运行,查询得到了音乐名为“Last Dance”的相关数据。
然后,我们可以测试一下,我们的其他判断条件是否可以正常运行,例如当输入的音乐名称为空时: