使用Django中特定于网址的密码通过密码保护单个网址吗?

时间:2018-11-24 09:37:06

标签: django django-views

因此,我有一堆带有如下网址的页面:

/ article / detail / 1

/ article / detail / 2

/ article / detail / 3

...

我想用密码保护其中的一些网址,受保护的网址将具有自己的密码,因此看起来像这样:

------- URL --------- 密码 --------

/ article / detail / 1 |密码1

/ article / detail / 2 | s3cret

/ article / detail / 3 |

这真的不需要那么安全,因为这里存储的信息并不那么重要。我将纯文本格式的“密码”存储在数据库中。理想情况下,我所希望的是,每当用户尝试访问这些URL之一时,如果没有密码,则用户将直接转到该页面,如果它具有密码,则将他们带到某个中间页面,可以在其中放置用这个密码。

最简单的方法是什么?如果需要的话,我可以在此处发布确切的代码,但是基本上所有这些页面都有一个views.py,看起来像:

class ArticleDetailView(LoginRequiredMixin, ListView):
    template_name = 'cb_detail.html'
    login_url = 'login'

    def get_queryset(self):
        return Data.getAllPosts()

    def get_context_data(self, **kwargs):
        # populate context
        return context

因此,这里没有使用任何模型。 LoginReqiredMixin用于确保用户实际上已登录,但我基本上需要在某些URL上再添加一层。

编辑:实际上,我实际上不需要帮助来确定哪些需要密码。我基本上可以使用URL中也包含的pk或id并检查我的数据库,以查看是否需要密码,但需要帮助来设置此中间页面才能输入密码,然后再允许其查看内容。该中间页面也可以像弹出窗口一样简单。

0 个答案:

没有答案