是否有关于如何自定义 django-allauth
模板和字段的教程。
我知道如何使用现有的 allauth 并添加字段。
但我想了解完全自定义模板,例如更改顺序等?
最佳答案
如果创建文件 templates/account/login.html
在代码布局中使用此名称,它可以覆盖 django-allauth
附带的名称。 .
对于社交帐户 templates/<b>socialaccount</b>/connections.html
Django-Allauth 有一些 documentation覆盖模板。
重新排序表单的选项之一
# yourapp/forms.py
from allauth.account.forms import SignupForm
class YourSignupForm(SignupForm):
field_order = ['email', 'username', 'password1', 'password2']
# settings.py:
ACCOUNT_FORMS = {'signup': 'mysite.forms.YourSignupForm'}
一些示例 rendering fields manually
<div class="fieldWrapper">
{{ form.email.errors }}
<label for="{{ form.email.id_for_label }}">Your email address:</label>
{{ form.email }}
</div>
<div class="fieldWrapper">
{{ form.username.errors }}
<label for="{{ form.username.id_for_label }}">Your Username:</label>
{{ form.username }}
</div>
<div class="fieldWrapper">
{{ form.password1.errors }}
<label for="{{ form.password1.id_for_label }}">Password:</label>
{{ form.password1 }}
</div>
<div class="fieldWrapper">
{{ form.password2.errors }}
<label for="{{ form.password2.id_for_label }}">Password(again):</label>
{{ form.password2 }}
</div>
您的代码:
from allauth.account.forms import SignupForm
class MyCustomSignupForm(SignupForm):
first_name = forms.CharField(max_length=100)
last_name = forms.CharField(max_length=100)
def save(self, request):
user = super(MyCustomSignupForm, self).save(request)
return user
<强> settings.py:
ACCOUNT_FORMS = {'signup': 'mysite.forms.MyCustomSignupForm'}
关于django - 如何自定义 Django-allauth 和模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59794236/