【问题标题】:How could I recognize private pages and public pages from QuerySets of Wagtail page?我如何从 Wagtail 页面的 QuerySets 中识别私有页面和公共页面?
【发布时间】:2020-10-30 23:51:56
【问题描述】:

当我从 wagtail 制作 API 时,我得到了 QuerySets(包含私有页面和公共页面),那么我如何识别私有页面和公共页面?数据库表没有存档来识别它。我知道如何获取私有查询集和公共查询集,用例如下:

Page.objects.filter().all().public().live() Page.objects.filter().all().not_public().live()

有没有我可以使用的文件,比如 page.private 来获取这个属性?

【问题讨论】:

  • 请添加你的模型,可以说明你能做什么
  • 感谢您的提问,我已经通过@gasman 提供的方法解决了这个问题

标签: django private wagtail public


【解决方案1】:

页面模型有一个get_view_restrictions() 方法,它返回一个适用于页面的限制查询集;如果为空,则该页面是公开的。

is_private = page.get_view_restrictions().exists()

【讨论】:

  • 谢谢,这真的帮助我得到正确的结果。再次感谢。
猜你喜欢
  • 1970-01-01
  • 2020-01-07
  • 2019-07-15
  • 1970-01-01
  • 1970-01-01
  • 2015-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多