Разрешить пользователям входить в систему через FB и входить в систему, создав учетную запись на вашем сайте - PullRequest
0 голосов
/ 05 мая 2020

Я хочу дать людям возможность войти на мой сайт с помощью FB или создать учетную запись на моем сайте. На данный момент у меня есть отдельные страницы для двух вариантов.

urls.py

 path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'),

path('abc/',TemplateView.as_view(template_name='blog/index.html'), name="facebook")

Я изменил имя с facebook на ab c, чтобы убедиться что имя не имеет никакого отношения к проблеме. Когда я нажимаю кнопку «Войти через Facebook», все работает нормально.

enter image description here

Когда я нажимаю «Войти» на этом экране, все работает нормально. Когда я нажимаю "Войти через FB", ничего не происходит.

enter image description here

У учетной записи с именем пользователя RossSymondsFacebook нет имени пользователя, потому что эта учетная запись была создана мной при входе в мою учетную запись Facebook.

enter image description here

индекс. html

{% load socialaccount %}
{% providers_media_js %}

        <head>
            <title>Facebook Registration</title>
        </head>

<button class="btn"><a href="{% provider_login_url "facebook" method="js_sdk" %}">Login With Facebook</a></button>

логин. html

{% extends "blog/base.html" %}
{% load crispy_forms_tags %}
{% load socialaccount %}
{% providers_media_js %}
{% block content %}
    <div class="content-section">
    <form method="POST">
        {% csrf_token %}
        <fieldset class="form-group">
            <legend class="border-bottom mb-4">Log In</legend>
            {{ form|crispy }}
        </fieldset>
        <div class="form-group">

            <button class="btn btn-outline-info" type="submit">Login</button>



        </div>
    </form>
    <div class="border-top pt-3">
        <small class="text-muted">
            Need An Account? <a class="ml-2" href="{% url 'register' %}">Sign Up Now</a>
        </small>
    </div>
</div>



<article class="media content-section">
<button class="btn"><a href="{% provider_login_url "facebook" method="js_sdk" %}">Login With Facebook</a></button>

</article>


{% endblock content %}

1 Ответ

0 голосов
/ 05 мая 2020

Я решил свою проблему, изменив свой код на следующий.

логин. html

{% extends "blog/base.html" %}
{% load crispy_forms_tags %}
{% block content %}
    <div class="content-section">
        <form method="POST">
            {% csrf_token %}
            <fieldset class="form-group">
                <legend class="border-bottom mb-4">Log In</legend>
                {{ form|crispy }}
            </fieldset>
            <div class="form-group">

                <button class="btn btn-outline-info" type="submit">Login</button>



            </div>
        </form>
        <div class="border-top pt-3">
            <small class="text-muted">
                Need An Account? <a class="ml-2" href="{% url 'register' %}">Sign Up Now</a>
            </small>
        </div>
    </div>

{% load socialaccount %}
{% providers_media_js %}
<article class="media content-section">

<button class="btn btn-outline-info"><a href="{% provider_login_url "facebook" method="js_sdk" %}">Login With Facebook</a></button>


</article>
 {% endblock content %}       
...