У меня проблема с этим кодом в django Я определил две глобальные переменные
Но Django не идентифицирует их
мое мнение:
global phone,rand_num
def phone_login(request):
if request.method == 'POST':
form = PhoneLoginForm(request.POST)
if form.is_valid():
phone = f"0{form.cleaned_data['phone']}"
rand_num = randint(1000, 9999)
api = KavenegarAPI('mytoken!')
params = { 'sender' : '', 'receptor': phone , 'message' : rand_num }
api.sms_send(params)
return redirect('account:verify')
else :
form = PhoneLoginForm()
return render(request,'account/phone_login.html',{'form':form})
def verify(request):
if request.method == "POST":
form = VerifyCodeForm(request.POST)
if form.is_valid():
if rand_num == form.cleaned_data['code']:
profile = get_object_or_404(Profile, phone = phone)
user = get_object_or_404(User,profile__id = profile.id)
login(request,user)
messages.success(request,'logged in successfully' , 'success')
return redirect('popasssts:all_posts')
else:
messages.error(request,'your code is wrong','warning')
else:
form = VerifyCodeForm()
return render(request,'account/verify.html',{'form' : form})
мои URL:
path('verify/',views.verify,name='verify'),
У меня такая ошибка:
NameError at /account/verify/
name 'rand_num' is not defined
Request Method: POST
Request URL: http://127.0.0.1:8000/account/verify/
Django Version: 3.0.7
Exception Type: NameError
Exception Value:
name 'rand_num' is not defined
Хочу, чтобы пользователь зашел на сайт после ввода СМС кода.