python - 模型/表单/Django
问题描述
好的,在我上一个问题的惊人有用提示之后再次回来。我正在学习编码并为自己创建一个网络应用程序来跟踪我的吸烟和包装成本。在我开始跟踪吸烟之前,我先从一个数据库开始跟踪我购买的香烟和成本。我现在的大问题是,当我保存表单时,它不会将数据添加到 /admin 站点或我的 sql lite 上的 packss 模型中。这是我的最新代码:
html:
{% extends 'pack/layout.html'%}
{%block content%}
<div class = "form_pack">
<h3>FORM PACK</h3>
<p>
<form method="POST"> {% csrf_token %}
{{ form.as_p }}
<input type="submit" value="submit"/>
</form>
</p>
</div>
{% endblock %}
网址.py
from pack.forms import packsForm
from django.urls import path
from . import views
urlpatterns = [
path("", views.pack, name="index"),
path("packs_create/", views.packs_create, name="packs")
]
视图.py
from django.forms.forms import Form
from django.shortcuts import render
from .forms import packsForm
# Create your views here.
def packs_create(request):
if request.method == "POST":
form = packsForm(request.POST)
if form.is_valid():
form.save(commit = True)
else:
form = packsForm()
return render(request, 'pack/index.html', {'form': form})
def pack(request):
if request.method == "POST":
form = packsForm(request.POST)
if form.is_valid():
form.save(commit = True)
else:
form = packsForm()
return render(request, 'pack/index.html', {'form': form})
模型.py
from django.db import models
import datetime
# Create your models here.
class packs (models.Model):
timestamp = models.DateTimeField(auto_now_add=True, auto_now=False, blank=False)
num_packs = models.SmallIntegerField(max_length=10)
cost_packs = models.DecimalField(max_digits=6, decimal_places=2)
表格.py
from django.forms import ModelForm
from .models import packs
class packsForm(ModelForm):
class Meta:
model = packs
fields = ('num_packs', 'cost_packs')
再次感谢所有帮助,希望我能用它来更好地理解编码和戒烟!
-Kornballer 博士
解决方案
推荐阅读
- node.js - 节点项目在 Canvas.createCanvas() 上无错误退出
- python-2.7 - 如何使用 Python 和 gtk 将文本缓冲区(它包含使用不同字体颜色、系列、样式和大小修改的文本)保存到文件中?
- python - 如何使用 seaborn 热图制作 jupyter HTML-matplotlib 动画?
- javascript - 如何在循环中选择一组数字?
- powershell - 使用某些 cmdlet 返回空值的 Powershell 自定义列
- python - 在 Python 中的大型数据集上使用 OOP 是否有益?
- reference - 包含可变切片的结构
- python - 从 django 渲染的 html 中显示字典
- c# - 将 datetime2 数据类型转换为 datetime 数据类型导致值超出范围。该语句已终止
- reactjs - 如何将特定 id 传递给路由的路径?