логическая ошибка при сопоставлении записи из моделей в python django - PullRequest
0 голосов
/ 23 января 2020

models.py

Я скопировал имя пользователя из базы данных, а затем записал его в форму входа, несмотря на то, что оно не соответствует записи, и управление перемещается в сторону кроме и окончательного Условие, пожалуйста, кто-нибудь здесь, чтобы помочь улучшить мой код,

в целом, я думаю, что программа хороша и где ошибка, я не понимаю точку, где ошибка на самом деле

class UserAccountModel(models.Model):

    ContactEmail = models.EmailField(max_length=30)
    FirstName = models.CharField(max_length=30)
    LastName = models.CharField(max_length=40)
    Counrty = models.CharField(max_length=50)
    Phone = models.IntegerField()
    ChooseUserName = models.CharField(max_length=30)
    password = models.CharField(max_length=32)
    EnterCaptcha = models.CharField(max_length=4)
    payments = models.BooleanField(max_length=6, default=False)
    showsponsor = models.CharField(max_length=30, default=False)
    RegisteredDate = models.DateTimeField(auto_now_add=True, blank=True)
    ActivationOn = models.DateField(auto_now_add=False,blank=True)
    expiry_date = models.DateField(auto_now_add=False,blank=True)

    def __str__(self):
        return self.FirstName + ":" + self.ChooseUserName

views.py

def join(request):

    if request.method == 'POST':
         refrer = request.POST['showsponsor']
         try:
            if UserAccountModel.objects.get(ChooseUserName=str(refrer)):
                ContactEmail=request.POST['email']
                FirstName=request.POST['firstname']
                LastName=request.POST['lastname']
                Counrty=request.POST['country1']
                Phone=request.POST['phone']
                ChooseUserName=request.POST['username']
                password=request.POST['password2']
                EnterCaptcha=request.POST['captcha']
                payments=request.POST['payment']
                # referal_Name = request.POST['showsponsor']
                join_save_record = UserAccountModel.objects.create(ContactEmail=ContactEmail,FirstName=FirstName,LastName=LastName,Counrty=Counrty,Phone=Phone,ChooseUserName=ChooseUserName,password=password,EnterCaptcha=EnterCaptcha, payments='True',)
                join_save_record.save()
                print(join_save_record.FirstName)
                namew=request.POST['showsponsor']
                # session creating
                request.session['ChooseUserName'] = str(refrer)
                rerredby = request.session.get("ChooseUserName")
                print("session created : " + str(rerredby))
                return render(request, 'payment_verify.html', {'rerredby':rerredby})

        except UserAccountModel.DoesNotExist:
            messages.info(request, 'invalid refrer  except case name contact to the right persone who did')
            print("denied")
            return redirect("/join")
        finally:
            user = authenticate(username=str(refrer))
            if user is not None:
                ContactEmail = request.POST['email']
                FirstName = request.POST['firstname']
                LastName = request.POST['lastname']
                Counrty = request.POST['country1']
                Phone = request.POST['phone']
                ChooseUserName = request.POST['username']
                password = request.POST['password2']
                EnterCaptcha = request.POST['captcha']
                payments = request.POST['payment']
                # referal_Name = request.POST['showsponsor']
                join_save_record = UserAccountModel.objects.create(ContactEmail=ContactEmail, FirstName=FirstName,
                                                                   LastName=LastName, Counrty=Counrty, Phone=Phone,
                                                                   ChooseUserName=ChooseUserName, password=password,
                                                                   EnterCaptcha=EnterCaptcha, payments='True',ActivationOn='2020-01-20',expiry_date='2020-01-20' )
                join_save_record.save()
                print(join_save_record.FirstName)
                namew = request.POST['showsponsor']
                # session creating
                request.session['ChooseUserName'] = str(refrer)
                rerredby = request.session.get("ChooseUserName")
                request.session['ChooseUserName'] = str(refrer)
                rerredby = request.session.get("ChooseUserName")
                print("session created : " + str(rerredby))
                return render(request, 'payment_verify.html',{'rerredby':rerredby})
            else:
                messages.info(request, 'invalid final case refrer name contact to the right persone who did')
                print("denied")
                return redirect("/join")
    else:
        return render(request, 'join.html')
...