Я пытаюсь выучить Django. Я считаю, что моя форма работает правильно, но данные не сохраняются в базе данных.
Это моя модель:
from django.db import models
# Create your models here.
class parameters(models.Model):
interval_1 = models.PositiveIntegerField()
interval_2 = models.PositiveIntegerField()
interval_3 = models.PositiveIntegerField()
interval_4 = models.PositiveIntegerField()
interval_5 = models.PositiveIntegerField()
interval_6 = models.PositiveIntegerField()
cost_1 = models.DecimalField(max_digits=19, decimal_places=2)
cost_2 = models.DecimalField(max_digits=19, decimal_places=2)
cost_3 = models.DecimalField(max_digits=19, decimal_places=2)
cost_4 = models.DecimalField(max_digits=19, decimal_places=2)
cost_5 = models.DecimalField(max_digits=19, decimal_places=2)
cost_6 = models.DecimalField(max_digits=19, decimal_places=2)
Это моя форма:
from django import forms
from django.forms import ModelForm
from .models import parameters
# Create your forms here.
class set_parameters(forms.ModelForm):
class Meta:
model = parameters
fields = "__all__"
Это мой взгляд:
from django.shortcuts import render
# Create your views here.
from .models import parameters
from .forms import set_parameters
def frequence_create_view(request):
form = set_parameters(request.POST or None)
if form.is_valid():
form.save()
print(request)
print(form)
form = set_parameters()
else:
print (form.errors)
context = {
'form': form
}
return render(request, 'settings/settings.html', context)
Это мои шаблоны:
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
{% block frequence %}
{% endblock %}
{% block cost %}
{% endblock %}
</body>
</html>
{% extends 'base.html' %}
{% block frequence %}
<form action='.' method='POST'> {% csrf_token %}
{{ form.as_p }}
<input type='submit' value='save' />
</form>
{% endblock %}
И это мой URL
from django.contrib import admin
from django.urls import path
from settings.views import frequence_create_view
urlpatterns = [
path('admin/', admin.site.urls),
path('frequence_create/', frequence_create_view),
]
Проблема, с которой я сталкиваюсь, заключается в том, что Я отправляю форму, информация не хранится в базе данных.
Может кто-нибудь попытаться объяснить, в чем проблема?