如何解决Django allauth 在 User Moel
我正在尝试使用 Django All Auth 使用自定义用户模型和表单进行登录和注册。
class User(AbstractBaseUser,PermissionsMixin):
username = models.CharField(_('username'),max_length=130,unique=True)
full_name = models.CharField(_('full name'),blank=True)
is_staff = models.BooleanField(_('is_staff'),default=False)
is_active = models.BooleanField(_('is_active'),default=True)
date_joined = models.DateField(_("date_joined"),default=date.today)
phone_number_verified = models.BooleanField(default=False)
change_pw = models.BooleanField(default=True)
phone_number = models.BigIntegerField(unique=True,default=create_new_ref_number())
country_code = models.IntegerField(default='91')
two_factor_auth = models.BooleanField(default=False)
USER_TYPE_CHOICES = (
(1,'student'),(2,'teacher'),(3,'unassigned'),(4,'teacherAdmin'),(5,'systemadmin'),)
user_type = models.PositiveSmallIntegerField(choices=USER_TYPE_CHOICES,default=3)
objects = UserManager()
USERNAME_FIELD = 'username'
required_FIELDS = ['full_name','phone_number','country_code']
我不确定我应该如何或从哪里获得注册用户的电话号码。由于该字段是必需且唯一的,因此我使用随机数来临时具有一些价值。
这是我的登录表单。我可以使用登录网址进行注册。我不知道这个网址是否应该不同。
请提出建议。
<div class="container " style="padding-top: 40px;padding-left:0px; padding-right:0px;">
<div class="col-sm-12 col-xs-12 col-md-4 justify-content-center" >
<form class="account-register shadow-5 mt-4 mb-4" id="login_form" method="POST"
action="./?next={{ redirect_to }}" autocomplete="off" style="background-color:#f5f8fb !important;">
<div class="text-center ">
<h3><i class="fa fa-lock fa-2x mt-3"></i></h3>
</div>
<h3 class="text-center mt-4">Login</h3>
{% csrf_token %}
<div class="google-signup-btn-qc ggl-btn mb-3 ml-4 mr-4">
<span class="logo-wrapper-qc">
<img src ={% static "images/google-signup.png" %} alt="Google">
</span>
<span class="btn-label">
<a title="Google" class="socialaccount_provider google" style="text-decoration:none;" href={% provider_login_url "google"%} >Sign in with Google</a>
</span>
</div>
<h4 class="text-center">OR </h4>
<div class="form-group{% if form.username.errors %} has-error{% endif %} ml-4 mr-4" >
<label class="control-label" for="id_username" style="font-weight:700;">Email Address</label>
<input class="form-control input-lg input-form-custom" id="id_username" maxlength="150" name="username" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" type="text" required />
<div class="error-block">{{ form.username.errors }}</div>
</div>
<div class="form-group{% if form.password.errors %} has-error{% endif %} ml-4 mr-4">
<label class="control-label" for="id_password" style="font-weight:700;">Password</label>
<div class="input-group input-group-lg">
</div>
<input class="form-control input-lg input-form-custom" id="id_password" name="password" type="password" required />
<span toggle="#id_password" class="fa fa-fw fa-eye field-icon toggle-password"></span>
<div class="error-block">{{ form.password.errors }}</div>
</div>
<input type="hidden" name="next" value="{{ request.GET.next }}"/>
<button type="submit" name="login"
class="btn btn-primary btn-block form-group shadow-3 mt-3 ml-4 mr-2" style="background-color: #262B40 !important;
border-color: #262B40 !important;
Box-shadow: inset 0 1px 0 rgba(255,255,0.15),0 1px 1px rgba(46,54,80,0.075) !important; width:87%" >
Login<i class="fa fa-sign-in" aria-hidden="true"></i>
</button>
<br/>
</form>
</div>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。