微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何访问登录系统字段中内置的djagno

如何解决如何访问登录系统字段中内置的djagno

因此,当我在线查看有关如何使用内置登录系统的django的教程时,我发现它们在模板中使用{{ form.as_p }},我如何才能在tmeplates中单独访问每个字段,以便将它们放在自己的模板中样式的模板?

解决方法

您可以从Django源代码中查找登录表单字段名称。这里-https://github.com/django/django/blob/master/django/contrib/auth/forms.py

,

您可以通过继承默认的AuthenticationForm

重新定义字段
from django import forms
from django.contrib.auth.forms import AuthenticationForm


class UserLoginForm(AuthenticationForm):
    def __init__(self,*args,**kwargs):
        super(UserLoginForm,self).__init__(*args,**kwargs)

    username = forms.EmailField(widget=forms.TextInput(
        attrs={
             'class': 'your-class','placeholder': 'Enter your username','id': 'username-input'
        }))
    password = forms.CharField(widget=forms.PasswordInput(
        attrs={'class': 'your-class'}))

您可以在模板中以{{ form.username }}{{ form.password }}的形式访问这些文件

您还可以将每个字段包装在<div>标记中并添加一些类,例如:

<form action="/your-view/" method="post">
    {% csrf_token %}
    <div id="username-input" class="form-control your-class">
        {{ form.username }}
    </div>
    <div id="password-input" class="another-class">
        {{ form.password }}
    </div>
    <input type="submit" value="OK">
</form>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。