Я создаю проект django и постоянно получаю эту ошибку: - django.db.utils.IntegrityError: нулевое значение в столбце «id» отношения «проверка» нарушает ненулевое ограничение
DETAIL: неверная строка содержит (null, 7, 839510, 0, 2024-10-29 19:51:34.057435+00, f, null).
Я думаю, это как-то связано с моей базой данных, я использую pgadmin
Я создаю проект django и постоянно получаю эту ошибку: - django.db.utils.IntegrityError: нулевое значение в столбце «id» отношения «проверка» нарушает ненулевое ограничение DETAIL: неверная строка содержит (null, 7, 839510, 0, 2024-10-29 19:51:34.057435+00, f, null). Я думаю, это как-то связано с моей базой данных, я использую pgadmin [code]views.py
from django.shortcuts import redirect, render from django.contrib.auth import login, authenticate from django.core.mail import send_mail from django.utils import timezone from .forms import UserRegistrationForm, UserLoginForm, VerificationForm from .models import Validation
# User Registration View def register_view(request): if request.method == 'POST': form = UserRegistrationForm(request.POST) if form.is_valid(): user = form.save() login(request, user) token = random.randint(100000, 999999) Validation.objects.create(user=user, token=token, expired=timezone.now() + timezone.timedelta(hours=1)) send_mail( 'Your Verification Code', f'Use this code to verify your account: {token}', settings.DEFAULT_FROM_EMAIL, [user.email], ) return redirect('verification') else: form = UserRegistrationForm() return render(request, 'registration/register.html', {'form': form})
# Verification View def verify_view(request): if request.method == 'POST': form = VerificationForm(request.POST) if form.is_valid(): token = form.cleaned_data['token'] try: validation = Validation.objects.get(user=request.user) if validation.token == int(token) and validation.expired >= timezone.now(): validation.validation_status = True validation.save() return redirect('profile') else: # Handle case where verification fails except Validation.DoesNotExist: pass else: form = VerificationForm() return render(request, 'registration/verify_email.html', {'form': form})models.py
# Create your models here.
class UserProfile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) status = models.CharField(max_length=50, null=True, blank=True) company_name = models.TextField(null=True, blank=True) logo = models.ImageField(upload_to='logos/', null=True, blank=True) validation = models.BooleanField(null=True, blank=True)
def __str__(self): return self.user.username
class Validation(models.Model): id = models.BigAutoField(primary_key=True) user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) # Links to User model token = models.BigIntegerField() tries = models.IntegerField(default=0) expired = models.DateTimeField(default=timezone.now) # Set default to current time validation_status = models.BooleanField(default=False) validation_date = models.DateTimeField(null=True, blank=True)
def save(self, *args, **kwargs): if not self.id: self.expired = timezone.now() + timedelta(minutes=10) super().save(*args, **kwargs)
def check_expiry_and_increment_tries(self): if timezone.now() > self.expired: self.tries += 1 self.expired = timezone.now() + timedelta(minutes=10) # Reset expiry time self.save()
def generate_verification_code(self): self.token = uuid.uuid4().int >> 64 # Generate a large integer token self.expired = timezone.now() + timedelta(minutes=10) self.save()
Я создаю проект django и постоянно получаю эту ошибку: - django.db.utils.IntegrityError: нулевое значение в столбце «id» отношения «проверка» нарушает ненулевое ограничение
DETAIL: неверная строка содержит (null, 7, 839510, 0, 2024-10-29...
Я создаю проект django и постоянно получаю эту ошибку: - django.db.utils.IntegrityError: нулевое значение в столбце «id» отношения «проверка» нарушает ненулевое ограничение
DETAIL: неверная строка содержит (null, 7, 839510, 0, 2024-10-29...
I have form and I connected with MySQL, so whenever i fill up it will be shown in mySQL. The next step is to have a table of contents in my index.php, what i have. But now when I wanna press delete button it shows me blanket page.