/ / एक पृष्ठ पर सामान्य और सामाजिक खाते के साथ अल्लाथ साइनअप टेम्पलेट - django, django- टेम्पलेट, django प्रमाणीकरण

एक पृष्ठ पर सामान्य और सामाजिक खाते के साथ Allauth साइनअप टेम्पलेट - django, django-templates, django-प्रमाणीकरण

मुझे लगता है कि allauth टेम्प्लेट थोड़ा कठिन हैसमझें और "वास्तव में यह पता नहीं लगा सकते हैं कि मैं कैसे" एक टेम्पलेट बनाने में सक्षम हूं जो सामाजिक स्थिति (मेरे मामले में एफबी) और सामान्य सामान्य (ईमेल, आदि) के बीच चयन करने की अनुमति देता है, उदाहरण के लिए स्टैकओवरफ़्लो पर।

मूल रूप से मैं का उपयोग करना चाहते हैं {{ form.as_p }} साइनअप दृश्य का उपयोग करना।

उत्तर:

उत्तर № 1 के लिए 1

आप ओवरराइड कर सकते हैं इस टेम्पलेट (account/login.html)।

सामान्य लॉगिन फ़ॉर्म के लिए, आपके पास निम्नलिखित स्निपेट हो सकते हैं, जो उल्लिखित टेम्पलेट से निकाले गए हैं:

{% load i18n %}
<form class="login" method="POST" action="{% url "account_login" %}">
{% csrf_token %}
{{ form.as_p }}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<a class="button secondaryAction" href="{% url "account_reset_password" %}">{% trans "Forgot Password?" %}</a>
<button class="primaryAction" type="submit">{% trans "Sign In" %}</button>
</form>

और फेसबुक सामाजिक प्रमाणीकरण के लिए आप निम्न पर आधारित हो सकते हैं यह टेम्प्लेट:

{% load socialaccount %}
<a title="Facebook" class="socialaccount_provider facebook"
href="{% provider_login_url facebook process="login" %}">Facebook</a>

दोनों उल्लिखित टेम्पलेट django-allauth द्वारा प्रदान किए गए हैं, लेकिन a जोड़कर इसे ओवरराइड किया जा सकता है templates आपके django एप्लिकेशन को फ़ोल्डर, और इस मामले में समान निर्देशिका संरचना बनाना

myapp
|_templates
|_account
|_login.html

और में अपना कोड डाल रहा हूँ login.html। वही किसी अन्य टेम्पलेट पर लागू होता है जिसे आप ओवरराइड करना चाहते हैं। यहाँ के टेम्प्लेट हैं django-allauth.


जवाब के लिए 0 № 2

आपको "सामान्य सामान्य" के लिए उपयोगकर्ता / पासवर्ड के लिए एक फॉर्म तैयार करना चाहिए और फिर सामाजिक सामान्य पृष्ठों के लिए लिंक जोड़ना चाहिए।

<form>
user... pass...
</form>
<a href="">Facebook</a>