Django"取真经"

作者: zhaoolee | 来源:发表于2017-10-24 18:14 被阅读93次

    唐僧一行人受唐王李世民委派,携通关文牒,前往西天取经,一路斩妖除魔,经历九九八十一难,成功到达了西天大雷音寺,在僧人引导下,穿过罗汉堂,终见佛祖,佛祖接见唐僧师徒后,化佛法为经书,师徒取得经书后,兴致极好,未经检查就将经书加入行囊,欲离去之时,幸得弥勒佛指引,携无字经重返大雄宝殿,一番波折后,用紫金钵盂换得真经书,最后携带真经返回东土大唐...

    这个故事很像浏览器与服务端Django的通讯过程:

    西天取经 一次通讯
    "唐王" 普通用户
    "东土大唐" 浏览器
    "西天取经" 一次面向服务端的请求
    "通关文牒" cookie
    "路上的妖魔鬼怪" "处理请求"中间件process_request
    "雷音寺" Django核心服务
    "引路僧人" 路由表
    "抵达大雄宝殿" 获得request对象
    "十八罗汉" 中间件(process_view)
    "佛祖" 视图函数 View
    "佛法" 数据 Model
    "无字经" 网页模板 Template
    "紫金钵盂" 处理响应的中间件process_response
    "弥勒佛" 负责异常处理的中间件process_exception

    一次面向Django服务端的请求:

    第一步:

    • 用户(唐王李世民)从浏览器(东土大唐)发起一次"请求"(西天取经),被"负责处理请求"中间件process_request(妖魔鬼怪,九九八十一难)进行初步处理;

    第二步:

    • "请求"匹配路由表(引路僧人),找到对应的视图,先被中间件process_view处理(罗汉堂),然后被视图函数(佛祖)处理.

    第三步:

    • 视图函数(佛祖)从数据库中获得数据(佛法),从Templates中获取模板(无字经),将数据与模板结合,产生响应对象("真经")

    第四步:

    • 上步获得的响应对象("真经"),被处理响应的中间件process_response(如果不提供"紫金钵盂","真经书"可能会变成"无字经")处理,此时,如果响应出现了异常("真经"变成了"无字经"),会有process_exception(弥勒佛),进行异常处理

    第五步:

    • 响应信息("获得的真经")返回浏览器("东土大唐")后,将响应信息("获得的真经")解析展示的用户("唐王")面前
    白龙马,蹄朝西...

    Django有多好用呢?在整个过程中,所有的中间件,Django都帮我们写好了,所以开发者只需要担任"佛祖"的角色即可!

    相关文章

      网友评论

      本文标题:Django"取真经"

      本文链接:https://www.haomeiwen.com/subject/oryxpxtx.html