Не получается записать новые данные в БД через форму Django

Есть проблема с заполнением БД новыми данными через форму на сайте созданном на django. Вот код с views.py

from .models import Columbs
from .forms import ColumbsForm

def index(request):
    count = Columbs.objects.all()
    return render (request, 'firstapp/index.html', {'count': count})

def create(request):
    error = ''
    if request.method == 'POST':
        form = ColumbsForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('index')
        else:
            error = 'ФОРМА НЕ ВЕРНА'
        


    form = ColumbsForm()

    data = {
        'form': form,
        'error': error
    }

    return render(request, 'firstapp/create.html', data)

Вот код с urls.py

from django.contrib import admin
from django.urls import path, include

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('fisrtapp.urls') )
    
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

Также с models.py

from django.db import models


class Columbs(models.Model):
    image = models.ImageField('Изображение', upload_to=' ')
    size = models.CharField('Размер', max_length=250,null=True, blank=True)
    name = models.CharField('Название', max_length=250, null=True, blank=True)
    price = models.IntegerField('Цена')
    priceafterseils = models.IntegerField('Цена от 100к')

    def __str__(self):
        return self.name

И наконец, код html страницы

{% extends "firstapp/layout.html" %}

{% block title%}Форма по добавлению{% endblock %}

{% block content%}
    <div class = "features">
        <h1>Форма по добавлению</h1>
        <form method="post">
            {% csrf_token %}
            {{ form.image }} <br>
            {{ form.name }} <br>
            {{ form.size }} <br>
            {{ form.price }} <br>
            {{ form.priceafterseils}} <br>
            <span>{{error}}</span>
            <button class="btn btn-success" type="submit">Добавить</button>
        </form>

    </div>
{% endblock %}

Заранее прощу прощение за, возможно, глупый вопрос. В колледже дали задание, при этом не объясняя теорию.


Ответы (1 шт):

Автор решения: Tim-Tam

Вы не привели главного, что у Вас лежит в forms.py и как определен класс ColumbsForm

BTW path('', include('fisrtapp.urls')

Стартовую страницу лучше определить сразу каким то методом, чтобы потом было проще, а include подключать для какого-то отдельного приложения или направления

→ Ссылка