标签: django-allauth

如何使用新的 Django Allauth MFA

我有一个使用 Django Allauth 的项目。我看到他们最近在 Django Allauth 中发布了 MFA,但我不知道如何实现它,而且目前的文档相当有限。

谁能更详细地解释一下实现 Django Allauth MFA 的步骤是什么?

感谢任何人可以提供的帮助!

django-allauth

4
推荐指数
1
解决办法
528
查看次数

覆盖Django-allauth中的clean_email()方法

我如何覆盖默认clean_email()方法allauth.account.forms.BaseSignupForm.我在Forms.py中尝试了以下内容:

from allauth.account.forms import BaseSignupForm

    class Extended_BaseSignupForm(BaseSignupForm):
        def clean_email(self):
            data = self.cleaned_data['email']
            if "@gmail.com" not in data:   # any check you need
                raise forms.ValidationError("Must be a gmail address")
            if app_settings.UNIQUE_EMAIL:
                if data and email_address_exists(data):
                    raise forms.ValidationError \
                        (_("A user is registered with this e-mail address."))
            return data
Run Code Online (Sandbox Code Playgroud)

覆盖的目的是防止用户注册一次性电子邮件ID.

python django django-forms django-allauth

3
推荐指数
1
解决办法
1340
查看次数

Django-allauth有多个配置文件模型

我有一个django项目,其中有多个配置文件模型,每个模型都有一个用户模型的外键.它django-allauth用于注册.

目前,当使用社交帐户注册时,用户注册,创建用户和社会帐户,然后根据他/她之前选择的配置文件类型以及填写该表单后,将用户重定向到要填写的表单.是创建的正确配置文件类型.

如果用户,socialaccount和配置文件类型实例是在同一步骤中创建的,即在用户填写配置文件特定表单之后,我会喜欢它.无论如何我可以在不改变allauth's代码的情况下做到这一点吗?通过修改allauth来做到这一点并不难,但如果可以帮助我,我宁愿不维护第三方应用程序的自定义副本.

使用自定义适配器是因为它无法访问请求.

django django-allauth

3
推荐指数
1
解决办法
1975
查看次数

Django allauth - 具有自定义用户的多个社交帐户

我一直试图找到如何向已经注册并使用的用户添加新的社交帐户django-allauth.到目前为止,我已经找到了这个问题,而另一个问题与我需要的问题有关,但建议不起作用.

我正在使用自定义用户类,通过电子邮件进行身份验证,一旦我成功创建了第一个社交帐户,它就不会让我添加另一个.我已经尝试将provider_login_url用户进行身份验证的页面,如上面提到的一个答案中所建议的那样,但它似乎注销然后尝试再次注册,但随后,因为电子邮件是相同的,"它与现有用户的电子邮件发生冲突".

我怎样才能获得预期的行为?也就是说,它将django-allauth电子邮件识别为属于现有用户,因此仅创建socialaccount新用户,而不是新用户.

django-allauth

3
推荐指数
1
解决办法
2426
查看次数

django-allauth:仅在非社交注册时验证电子邮件

我正在使用django-allauth插件.它允许通过ACCOUNT_EMAIL_VERIFICATION设置变量配置电子邮件验证,但它不区分正常注册和社交注册.我想仅在通过正常注册注册时验证电子邮件,并且在通过社交注册提交时不进行验证.可能吗?我该怎么做?

python authentication django oauth-2.0 django-allauth

3
推荐指数
1
解决办法
653
查看次数

django-allauth在回调中提供403禁止

我正在创建一个自定义提供程序以从另一个内部项目中获取oauth2令牌,该过程几乎可以完成,但是403 forbidden当浏览器使用此URL返回到我的项目时,我收到了错误消息:

http://localhost:8001/account/connect/login/callback/?state=Nngd5Gu3JnB4&code=Rqqg91oEwQKDsvSyzZ8Az5fEeHGaEe#_=_
Run Code Online (Sandbox Code Playgroud)

这是我的自定义提供程序中的views.py:

import requests
from allauth.socialaccount.providers.oauth2.views import (OAuth2Adapter, OAuth2LoginView, OAuth2CallbackView)
from .provider import ConnectProvider


class ConnectOAuth2Adapter(OAuth2Adapter):
    provider_id = ConnectProvider.id
    access_token_url = 'http://localhost:8000/o/token/'
    authorize_url = 'http://localhost:8000/o/authorize/'
    profile_url = 'http://localhost:8000/api/account/'

    def complete_login(self, request, app, token, **kwargs):
        _token = {'access_token':token.token}
        resp = requests.get(self.profile_url, params={'access_token': token.token, 'alt': 'json'})
        extra_data = resp.json()
        login = self.get_provider().sociallogin_from_response(request, extra_data)
        return login

oauth2_login = OAuth2LoginView.adapter_view(GoConnectOAuth2Adapter)
oauth2_callback = OAuth2CallbackView.adapter_view(GoConnectOAuth2Adapter)
Run Code Online (Sandbox Code Playgroud)

django django-allauth

3
推荐指数
1
解决办法
671
查看次数

django-allauth社交登录的自定义重定向取消

我在django应用程序中使用django-allauth进行社交登录.当用户被提示具有社交登录对话框,例如Facebook登录窗口时,他可以选择拒绝权限请求.

在这种情况下,用户当前被重定向到/ accounts/social/login/canceled /.有什么办法可以将他重定向到自定义网址吗?

python django django-allauth

3
推荐指数
1
解决办法
1313
查看次数

调试django-allauth社交网络登录失败

使用django-allauth通过社交提供程序进行OAuth登录时,有时会失败并显示错误页面"社交网络登录失败".没有包含更多信息的日志输出.此日志输出有一个功能请求(https://github.com/pennersr/django-allauth/issues/1120),但已打开一年多.同时,如何获取更多信息来调试此错误?

python django oauth django-allauth

3
推荐指数
2
解决办法
2571
查看次数

django allauth自定义消息:使用html / css设置消息样式

默认情况下,Allauth的消息以文本文件的形式存储在模板目录中,它们类似于:

{% load i18n %}
{% blocktrans %}You cannot remove your primary e-mail address ({{email}}).{% endblocktrans %}
Run Code Online (Sandbox Code Playgroud)

这些使用django的模板标签,但不是“ HTML友好的”。我想对这些样式进行样式设置,例如:

{% load i18n %}
<div class="alert alert-danger alert-dismissible" role="alert">
            <button type="button" class="close" data-dismiss="alert" aria-label="Close">
                <span aria-hidden="true">&times;</span>
            </button>
            {% blocktrans %}You cannot remove your primary e-mail address ({{email}}).{% endblocktrans %}
 </div>
Run Code Online (Sandbox Code Playgroud)

但是上面的代码只是将HTML呈现为文本。我不能将HTML放在模板中,而只能在模板中做{{message}},因为我想根据每个消息的偏向(至少是颜色!)来更改其中的一些内容。

我该怎么做?谢谢!

html css django django-allauth django-messages

3
推荐指数
1
解决办法
2386
查看次数

如何覆盖django allauth电子邮件模板

我正在使用allauth版本,0.35.0并且我想覆盖电子邮件模板以为其创建所需的HTML模板。allauth登录和注册等页面没有问题,但是我找不到任何电子邮件模板。

这只是.txtpath中的一个文件/templates/account/email/。但是,如何HTMLallauth诸如更改密码等任务的电子邮件设置消息?

任何帮助将不胜感激。

django-templates django-email django-allauth

3
推荐指数
1
解决办法
1217
查看次数