Моя форма django показывает, что данные опубликованы, но данные не сохраняются в базе данных

Итак, моя форма работала просто отлично, пока я не поиграл с моим фронтендом... изменив внешний вид системы. Но я не думаю, что это влияет на мои формы, но на удивление все мои формы больше не сохраняют данные в базу данных!!! Помогите, ребята. Вот мой views.py

from django.contrib.auth.models import User
from django.contrib import messages
from django.shortcuts import render, redirect
from django.contrib.auth import login, authenticate
from .forms import *

# Create your views here.
def register(request):
    form = RegistrationForm()
    if request.method == "POST":
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'User successfully registered!')
            return redirect('home')
    else:
        form = RegistrationForm()
    return render(request, 'accounts/register.html', {'form': form} )

def login(request):
    if request.method == 'POST':
            username = username.POST['username']
            password = request.POST['password']

            try:
                user = Account.objects.get(username=username)
            except:
                messages.error(request, 'username does not exist')

            user = authenticate(request, username=username, password=password)

            if user is not None:
                login(request, user)
                return redirect('home')
            else:
                messages.error(request, 'Invalid username Or Password')
    return render(request, 'accounts/login.html', {} )

models.py

forms.py

Я буду очень признателен за вашу помощь... у меня от нее голова болит и я не могу понять, почему данные не сохраняются в моей базе данных!!!

Похоже, что форма не переходит в представление register, пожалуйста, проверьте это, так как имя, которое вы указали для перенаправления - home в href теге input (возможно, имя register или что-то еще, проверьте это), также не упоминайте ничего вроде action или href, так как Django по умолчанию принимает маршрут текущей страницы, так:

Файл шаблона:

  <form method="POST">
        {% csrf_token %}    
        <div class="form-row" >
            <div class="col-md-6 mb-0">
              {{ form.email|as_crispy_field }}
            </div>
            <div class="col-md-6 mb-0">
              {{ form.username|as_crispy_field }}
            </div>
            <!--<div class="col-md-6 mb-0">
              {{ form.profile_picture|as_crispy_field }}
            </div>-->
            <div class="col-md-12 mb-0">
              {{ form.address|as_crispy_field }}
            </div>
            <div class="col-md-6 mb-0">
              {{ form.phone_number|as_crispy_field }}
            </div>
            <div class="col-md-6 mb-0">
              {{ form.car|as_crispy_field }}
            </div>
            <div class="col-md-12 mb-0">
              {{ form.details|as_crispy_field }}
            </div>
            <input style="margin-left: 10px;" class="btn btn-primary" type="submit" value="Sign Up">

        </div>
    </form> 

views.py:

def register(request):
    if request.method == "POST":
        form = RegistrationForm(request.POST)
        if form.is_valid():
            form.save()
            messages.success(request, 'User successfully registered!')
            return redirect('home')
    else:
        form = RegistrationForm()
    return render(request, 'accounts/register.html', {'form': form} )

RegisterForm не сохраняет данные, потому что form.is_valid() равно False.

для вашей RegisterForm

поскольку вы используете поле file(image) в вашей форме, вы должны добавить enctype к тегу формы в шаблоне, следующим образом :

<form method="POST" entype="multipart/form-data">

и внутри вашего представления регистра вы должны инстанцировать вашу форму следующим образом:

form = RegistrationForm(request.POST, request.FILES)
Вернуться на верх