0

我正在关注文档并且已经创建了我的 Permission 实例,因此我可以装饰我的路由功能,但是,我不知道如何在模板中隐藏链接。我在这里看到了一个使用角色的答案,但是有没有办法使用 Flask-Principal 的权限呢?

在 Jinja2 模板中隐藏不可访问的链接这里的提问者的回答听起来非常好,但会抛出我的权限,我也不太明白他在做什么,只是他不必重新初始化 jinja2 模板上的权限/角色边。

我的目标是在我学习的过程中了解每个烧瓶扩展的用途。这就是为什么我想知道是否有办法做到这一点,而不必使用 Flask-Security 或丢弃我已经用 Flask-Principal 定义的权限。

4

1 回答 1

1

我使用Flask-NavFlask-Bootstrap来创建导航栏,我认为你也应该在代码中遵循它的结构。有2个基本步骤:

  1. 在您的应用代码中定义一个(多维)导航链接列表,您可以在此过程中使用您的所有权限。将此过滤后的列表传递给您的模板。
  2. 在您的模板中循环列表并从中生成一个漂亮的 HTML 代码。

恕我直言,这是创建角色或权限相关导航栏的正确方法,因为它将 HTML 生成代码与“应用程序”代码分开。

于 2015-10-16T13:59:18.377 回答