对于我的应用程序的许多功能,它需要使用
@auth.requires_login()
这是否意味着所有与模型中定义的Auth
对象相关的代码必须才能运行,以便将请求提供给需要装饰器的操作?如果没有,我应该如何重新考虑代码,以最大限度地减少不必要的Auth
代码部分执行?
答案 0 :(得分:1)
仅检查用户是否已登录并不一定要求运行所有Auth代码。您必须实例化Auth对象,但不必运行auth.define_tables()
(定义所有Auth表)。请注意,如果您未定义Auth表,则auth.navbar()
帮助程序函数将无法正常工作,因为它尝试引用auth_user表的属性。作为一种变通方法,您可以创建自定义导航栏功能(无论如何您可能想要这样做),或者至少定义一个表。