【问题标题】:Django: Show View after password entryDjango:输入密码后显示视图
【发布时间】:2018-12-15 20:56:22
【问题描述】:

只有在让用户输入通过链接检查的密码后,我才能返回视图?

class Foo(models.Model):
    url = models.CharField(max_length=10) #a randomly created ASCII-string
    name = models.CharField(max_length=10)
    password = models.CharField(max_length=10)

url_patterns = [path('foo/<url>/admin', views.foo, name='foo_admin'),]

所以一个用户去 url:

localhost/foo/bar

现在他应该输入正确的密码才能看到url='bar'model Foo的内容。

【问题讨论】:

    标签: django


    【解决方案1】:

    如果您使用基于类的视图,您将需要 UserPassesTestMixin。

    如果您使用基于函数的视图,您将需要 user_passes_test 装饰器。

    两者都被描述为here。两者都会从本质上转移到您定义的任何过程流。在您的情况下,您将希望转移到您用于密码检查的任何内容。

    如果您还没有实现密码方案,您还可以在同一链接中阅读有关默认 django 身份验证的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 2011-04-29
      • 2015-01-30
      • 2018-04-23
      • 2012-04-03
      • 1970-01-01
      相关资源
      最近更新 更多