python - Django allauth 允许的 url

标签 python django django-allauth

我刚刚开始使用 allauth 的 Django 项目,我配置了基本设置,没有使用任何第三方提供商。我已经为我的个人资料页面创建了一个基本模板。到目前为止,一切都按预期工作,但如果转到 localhost:8000/accounts/profile,即使之前没有登录,我也可以看到该页面。我试图在文档中查找如何定义哪个页面需要登录,但我没有找到任何内容。

有什么想法吗? 谢谢!

编辑 这些是我的 allauth 设置:

#Allauth Config
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_SIGNUP_FORM_CLASS = 'picturesApp.forms.SignupForm'
ACCOUNT_EMAIL_VERIFICATION = 'none'

最佳答案

一种可能的方法是使用“login_required”装饰器来装饰处理您的个人资料页面的 View 。

示例:

from django.contrib.auth.decorators import login_required
urlpatterns = patterns('',
   # MY PROFILE
   url(r'^$',
       login_required(MyProfileDetailView.as_view()),
       name="my_profile"
   )
)

此装饰器验证用户是否已登录,否则返回重定向 http 响应(到登录 URL)。
希望这对您有帮助。

关于python - Django allauth 允许的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27324154/

相关文章:

Django-allauth:设置社交帐户后获取本地帐户

python - 如何获取两个列表之间的所有映射?

django - 如何集成 Django 和 react-router-dom?

django-allauth - 手动调用电子邮件验证

mysql - 无法使用 MySQL 后端运行 Django

python - DJANGO 静态图像不显示在模板中

在 SSL 中运行的 django-allauth

python - 有没有一种惯用的方法来使用 setuptools 安装 systemd 单元?

python - 使用大数据文件进行计算

python - 使用 QtMultimedia 播放音频?