我正在尝试在我的Django站点中创建一个前端表单,允许用户向我的SQL数据库添加条目。
但是当我使用表单时,我的数据库中没有任何反应。我做错了什么?
我认为正确的方法是使用ModelForm技术。
我的模特看起来像这样:
static_cast<int>(std::numeric_limits<float>::infinity() )
所以我在 forms.py :
中写了这个class Actor(models.Model):
name = models.CharField(max_length=200)
wage = models.IntegerField(default=3100)
def __str__(self):
return self.name
然后我将其添加到我的 views.py :
from django import forms
from .models import Actor
class ActorForm(forms.ModelForm):
class Meta:
model = Actor
fields = ['name', 'wage']
form = ActorForm()
这是一个名为 actors.html
的模板def get_actor(request):
if request.method == 'POST':
form = ActorForm(request.POST)
if form.is_valid():
return HttpResponseRedirect('/scenes/thanks/')
else:
form = ActorForm()
return render(request, 'scenes/actor.html', {'form': form})
def thanks(request):
return render(request, 'scenes/thanks.html',)
答案 0 :(得分:0)
您必须在检查其有效后调用模型表格save()
方法:
def get_actor(request):
if request.method == 'POST':
form = ActorForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect('/scenes/thanks/')
else:
form = ActorForm()
return render(request, 'scenes/actor.html', {'form': form})