- 项目中为啥要使用
那项目中的user_login_data中为啥要使用呢?
现在我们开始分析:
比如说,我们这俩方法都是视图函数,添加有路由:
那如果添加了路由,那就会出问题,因为一个视图函数不能被两个不同的路由进行装饰
如下:
一个路由对应一个函数。
那如果我们给之前的这个装饰器屏蔽掉: 如下:
有两个地方有到了user_login_data装饰器:
运行:
哎,发现没报错。 这是因为这俩函数是在不同的蓝图下,函数的名字是带着蓝图的名字的。
那如果我给新闻蓝图添加另外一个方法:
再运行:
发现报错,报错信息:视图函数映射要覆盖一个已经存在的方法news.wrapper
其实说白了,就是要先对news.wrapper方法添加路由/comment/<int:news_id>然后又对nwes.wrapper方法添加路由/<int:news_id>
总结: