【问题标题】:Django -- hide links from certain usersDjango——对某些用户隐藏链接
【发布时间】:2011-10-24 21:54:37
【问题描述】:

是否可以在 Django webapp 上对那些无权点击链接的用户隐藏某些链接?

我敢打赌,有一种基于链接的方法可以检查用户是否有权点击链接,然后根据该测试显示(或不显示)链接。然而,当有很多链接分布在一大堆网页上时,这可能会非常乏味。有什么方法可以通过设置或其他方式在整个网站上实现这一点?

【问题讨论】:

  • 简答:否。长答:Nooooooooooo。
  • 好的,感谢您的回复。我原以为这将是一个特性——也许在未来的 Django 版本中......
  • @zengr -- 同意!我不知道为什么我被否决了。 :S

标签: django user-interface permissions


【解决方案1】:

编写一个类似于spaceless 的模板标签,遍历其内容并删除所有不可访问的链接。这将使您不必手动触摸每个链接。

【讨论】:

  • 有趣,我会研究一下。谢谢
【解决方案2】:

也许可以编写一个自定义模板标签来接受链接 url,将其反转,内省目标视图所需的权限,然后有条件地显示它。

您仍然必须触摸每个模板中的每个链接,您想像这样制作它,这可能是一个丑陋的野兽。总而言之,如果你想出一种更集中的方式来控制访问,它可能会更容易。

【讨论】:

  • 是的,我考虑过这种方法。但是,正如您所指出的,我仍然需要对每个模板中的每个链接做一些事情。就像现在一样,我只是在 Django 中使用默认的授权设置标准。我只是认为让用户只看到他们实际可以使用的链接会在美学上令人愉悦。真的不是功能问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-04-09
  • 1970-01-01
  • 2022-06-16
  • 1970-01-01
  • 1970-01-01
  • 2021-06-18
  • 1970-01-01
相关资源
最近更新 更多