Я недавно начал разбираться что такое djanga, по этому прошу объяснять как можно проще)
В Django 2.2 я создаю форму, которая, после заполнения, должна все введённые данные вставить в БД.
Но этого не происходит!
Уже много часов не могу найти решение, очень прошу помочь.
models.py
from django.db import models
from django.forms import ModelForm
class compani_information(models.Model):
name = models.CharField('Название', max_length = 40)
email = models.URLField('Сайт', blank = True, null = True, help_text = 'не обязат.')
site = models.EmailField('Элекстронная почта')
tel = models.CharField('Телефон', max_length = 25)
tel2 = models.CharField('Телефон (доп.)', max_length = 25, blank = True, null = True, help_text = 'не обязат.')
inn = models.CharField('ИНН организации', max_length = 16)
def __str__(self):
return self.name
class Meta:
verbose_name = 'компания'
verbose_name_plural = 'компании'
views.py
from .models import compani_information
from .forms import compani_information_form
from django.http import Http404, HttpResponseRedirect
from django.shortcuts import render
from django.urls import reverse
def compani_reg(request):
if request.method == "POST":
form = compani_information_form(request.POST)
if form.is_valid():
# form.save()
new_hydrant = form.save()
# return HttpResponseRedirect(reverse('reg.html', args=(new_hydrant.id,)))
return HttpResponseRedirect('reg.html')
# return render(request, 'lk.html')
else:
return render(request, 'reg.html', {"form": compani_information_form()})
# def compani_reg_save_post(request):
# name = request.POST["name"]
# email = request.POST["email"]
# site = request.POST["site"]
# tel = request.POST["tel"]
# tel2 = request.POST["tel2"]
# img = request.POST["img"]
forms.py
from django.forms import ModelForm
from .models import compani_information
# Create the form class.
class compani_information_form(ModelForm):
class Meta:
model = compani_information
# инпут и их последовательность, которые будут выводиться
fields = '__all__'