我正在 django 中制作一個登錄注冊系統,我希望我的表單資料保存在內置的“用戶”表和我定制的“編碼器”表中。我的表單有 6-7 個欄位,我想在自定義“編碼器”表中插入這些欄位。但我只想在“用戶”表中插入“用戶名”和“密碼”。我不知道如何將“用戶名”和“密碼”與“表單”分開。這是我的代碼
def f1(request):
form = codersform()
form2 = User()
if request.method == 'POST':
form = codersform(request.POST)
if form.is_valid:
form.save()
form2 = coders.objects.filter('name', 'pasw')#Getting Error
form2.save()#in these two part
user = form.cleaned_data.get('name')
messages.success(
request, "Account Created Successfully For " user)
return redirect('login')
else:
messages.error(request, "Please Fill Out All Fields Correctly")
return render(request, 'signup.html', {'form': form})
表格代碼
<form action="" method="POST" class="register-form" id="register-form">
{% csrf_token %}
<div class="form-group">
<label for="name"><i class="zmdi zmdi-account material-icons-name"></i></label>
{{form.name}}
</div>
<div class="form-group">
<label for="matid"><i class="zmdi zmdi-account-box"></i></label>
{{form.matid}}
</div>
<div class="form-group">
<label for="phone"><i class="zmdi zmdi-phone"></i></label>
{{form.phone}}
</div>
<div class="form-group">
<label for="Semester"><i class="zmdi zmdi-star"></i></label>
{{form.semester}}
</div>
<div class="form-group">
<label for="Cf"><i class="zmdi zmdi-code"></i></label>
{{form.Cf}}
</div>
<div class="form-group">
<label for="email"><i class="zmdi zmdi-email"></i></label>
{{form.email}}
</div>
<div class="form-group">
<label for="pass"><i class="zmdi zmdi-lock"></i></label>
{{form.pasw}}
</div>
<div class="form-group">
<input type="checkbox" name="agree-term" id="agree-term" class="agree-term" />
<label for="agree-term" class="label-agree-term"><span><span></span></span>I agree all statements in <a href="#" class="term-service">Terms of service</a></label>
</div>
<div class="form-group form-button">
<input type="submit" name="signup" id="signup" class="form-submit" value="Register"/>
</div>
</form>
謝謝 :)
uj5u.com熱心網友回復:
我在表單欄位中看不到用戶名欄位,也許您使用名稱作為用戶名..
要創建用戶物件,您需要提供用戶物件的所有必填欄位
試試這個修改后的代碼:
def f1(request):
form = codersform()
if request.method == 'POST':
form = codersform(request.POST)
if form.is_valid:
form.save()
User.objects.create(username=form.cleaned_data['name'],password=form.cleaned_data['pasw']
messages.success(
request, "Account Created Successfully For " user)
return redirect('login')
else:
messages.error(request, "Please Fill Out All Fields Correctly")
return render(request, 'signup.html', {'form': form})
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/394336.html
標籤:姜戈 验证 django-forms
