实习记录-Django后端

与其说是实习,不如说是学习,在插班到软工华育实习的这10多天里,真的没想到我们能够从0搭建起一个可用的数据库管理系统。当然,并非单打独斗,而是和队友一起。

不得不说,这个大作业能完成,全靠各方大佬的技术支持,没有他们的帮助,笔者和队友很难顺利完成。

因为是前后端分离,所以笔者负责的django后端的任务就只剩下接参传参,负责前端的队长需要什么数据,后端处理好后返回给前端即可。

返回的数据是JSON格式,笔者这里参考实验室同学的写法,没有使用django自带的JsonResponse函数,而是使用rest_framework组件中的Responserest_framework这一个专门为API设计的组件自带很多功能,包括一个API测试页面,方便我们对API传参与调试。

笔者在第一次用到rest_framework后,还曾误解其工作原理,以为前端访问API后,rest_framework返回的数据是HTML格式,后来经过大佬点拨,方才意识到:直接访问数据接口,默认显示的为rest_framework自带的测试页面。

接口调试方面,经过大佬推荐,笔者使用postman工具来进行,这个工具没有官方汉化,但使用方式简单清晰,几乎不需要查阅资料即可上手。

django后端的路由列表很杂乱,完全没有区分模块,所有路由表都写在了项目的唯一一个urls.py文件中,但好在自己写名称时很少简写,路由表不至于杂乱到无法看懂:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
urlpatterns = [  
path('admin/', admin.site.urls),
path('', views.default),
# API列表
path('api/logintest/', views.logintest),
path('api/login/', views.api_login),
path('api/nologin/', views.api_nologin),
path('api/logout/', views.api_logout),
path('api/logup/', views.api_logup),
path('api/changepwd/', views.changepwd),
path('api/showinfo/', views.showinfo),
path('api/get_tech_video_list/', views.get_tech_video_list),
path('api/delete_tech_video/', views.delete_tech_video),
path('api/update_tech_video/', views.update_tech_video),
path('api/insert_tech_video/', views.insert_tech_video),
path('api/show_grid_multiple/', views.show_grid_multiple),
path('api/show_hot_list/', views.show_hot_list),
path('api/top_10/', views.top_10),
# iframe嵌入渲染
path('iframe/realtime/', views.iframe_realtime),
path('iframe/Mix_Zoom_On_Value/', views.iframe_Mix_Zoom_On_Value),
path('iframe/hot_rank_change/', views.iframe_hot_rank_change),
path('iframe/grid_multiple/', views.iframe_grid_multiple),
]

不知道各位读者能否通过API列表看出笔者做的是什么项目。

整个项目写下来,加上各种没有删掉的注释和空行,views.py文件中的代码量最终来到了528
views.py文件中的代码行数
在这实习写代码的日子里苦乐兼有,虽然好几次写代码、调试一直到夜里11点多,但成果总归是好的,收获也切实存在,这对于我而言,就足够了。


实习记录-Django后端
https://www.yao9e.cn/2023/08/07/f5ad3d9a93d5/
作者
yao9e
发布于
2023年8月7日
许可协议