Ошибка при получении POST запроса и загрузке в базу данных из формы Django

from django.shortcuts import render, redirect
from django.views.decorators.csrf import csrf_exempt

from .forms import FoodForm
from .models import Recipe


def index(request):
    card_info = Recipe.objects.all()
    return render(request, "food/main.html", {"cards": card_info})

@csrf_exempt
def create(request):
    form = FoodForm()
    if request.method == "POST":
        form = FoodForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect("main")
        else:
            return render(request, "food/test.html")

    context = {
        "form": form

    }

    return render(request, "food/crate.html", context)

Столкнулся с проблемой при вводе данных в форму. В базу данных ничего не добавляется, хотя в терминале ошибок нет (но POST запрос не подсвечивается зеленым, прилагаю скриншот) . Создал "else:return render(request, "food/test.html ")" для проверки ошибки, перерыл уже пол интернета, не могу понять в чем ошибка (есть предположение, что дело в добавлении изображения) Исправляю все файлы.

models.py

from django.db import models

class Recipe(models.Model):
    recipe_title = models.CharField(max_length=20)
    recipe_time = models.IntegerField()
    recipe_ingridients = models.IntegerField()
    author_name = models.CharField(max_length=30)
    image = models.FileField(upload_to='')
    recipe = models.TextField(max_length=300)

forms.py

from django.forms import ModelForm, TextInput, Textarea, NumberInput, FileInput
from .models import Recipe

class FoodForm(ModelForm):
    class Meta:
        model = Recipe
        fields = ["recipe_title", "recipe", "recipe_time", "recipe_ingridients", "author_name", "image"]
        widgets = {
            "recipe_title" : TextInput(
                attrs={
                    "class" : "title_form",
                    "placeholder" : "Введите название рецепта"
                }
            ),
            "recipe": Textarea(
                attrs={
                    "class": "form_of_all",
                    "placeholder": "Введите ваш рецепт"
                }
            ),
            "recipe_time" : NumberInput(
                attrs={
                    "class" : "ingr",
                    "placeholder" : "Введите время"
                }
            ),
            "recipe_ingridients": NumberInput(
                attrs={
                    "class": "ingr",
                    "placeholder": "Введите кол-во ингридиентов"
                }
            ),
            "author_name" : TextInput(
                attrs={
                    "placeholder" : "enter quthor name"
                }
            ),
            "image" : FileInput(
                attrs={
                    'type' : "file",
                    'name' : "input__file",
                    'id' : "input__file"
                }
            )


        }

html

{% extends 'food/crate_base.html' %}
{% load static %}


{% block content %}
    <div class = "body_of_content">
             <span class = "text_">Создать Рецепт</span>
             <div class = "back1"><img src = "{% static 'images_defolt/back1.png' %}" class = "first_img"></div>
             <div class = "back2"><img src = "{% static 'images_defolt/back1.png' %}" class = "first_img"></div>
            <form method="post" >
                {% csrf_token %}
                {{ form.recipe_title }}<br>
                {{ form.recipe }}<br>
                {{ form.recipe_time }}<br>
                {{ form.recipe_ingridients}}<br>
                {{ form.author_name }}<br>
                <label for="input__file" class="input__file-button">
                    {{ form.image }}
                    <span class="input__file-icon-wrapper"><img class="input__file-icon" src="{% static 'images_defolt/down.png' %}" alt="Выбрать файл" width="25"></span>
                    <span class="input__file-button-text">Выберите файл</span>
                </label>




                 <button class = "create_btn" type = "submit">Создать</button>
            </form>


         </div>
{% endblock %}

html из макета

<!DOCTYPE html>
<html>
 <head>
        <meta charset="utf-8" />
        <link rel="stylesheet" href="crate_css.css">
  <title>HTML5</title>
 </head>
    
    
 <body>
     <div class = "content">
         <div class = "nav_div">
             <div class="nav">
                
                <li><button class = "nav_btn">Рецепты</button></li>
                <li><button class = "nav_btn">Избранное</button></li>
                
                
            </div>
         </div>
         
         <div class = "body_of_content">
             <span class = "text_">Создать Рецепт</span>
             <div class = "back1"><img src = "images/back1.png" class = "first_img"></div>
             <div class = "back2"><img src = "images/back1.png" class = "first_img"></div>
             <input type = "text" placeholder="Введите название рецепта" class = "title_form"><br>
             <textarea placeholder = "Введите рецепт" class = "form_of_all"></textarea><br>
             <input type = "number" class = "ingr" placeholder="Введите время"><br>
             <input type = "number" placeholder = "Введите кол-во ингридиентов" class = "ingr"><br>
             <label for="input__file" class="input__file-button">
                <input type = "file" name = "input__file" id = "input__file" required>    
              <span class="input__file-icon-wrapper"><img class="input__file-icon" src="images/down.png" alt="Выбрать файл" width="25"></span>
              <span class="input__file-button-text">Выберите файл</span>
           </label>
             <button class = "create_btn">Создать</button>
             
            
                  
         </div>
         
     
     </div>
    
 </body>
    
    
</html>

views.py

from django.shortcuts import render, redirect
from django.views.decorators.csrf import csrf_exempt

from .forms import FoodForm
from .models import Recipe


def index(request):
    card_info = Recipe.objects.all()
    return render(request, "food/main.html", {"cards": card_info})

@csrf_exempt
def create(request):
    form = FoodForm()
    if request.method == "POST":
        form = FoodForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect("main")
        else:
            return render(request, "food/test.html")

    context = {
        "form": form

    }

    return render(request, "food/crate.html", context)

Исправьте enctype формы на multipart/form-data, например

<form method=‘post’ enctype=‘multipart/form-data’>
Вернуться на верх