django从输入表单访问数据的方法
我的症状是,我单击modify按钮,然后在bootstrap div part实现的新窗口上写下信息。然而,我的数据库一点也没有改变。请忽略。。。在代码中,我删除看起来很混乱的属性。代码可能有输入错误,因为我手动写下它来查找错误,但我没有找到 我尝试在view.py中,address_modify返回Httpresponsestreet,但它没有返回任何结果 view.pydjango从输入表单访问数据的方法,django,Django,我的症状是,我单击modify按钮,然后在bootstrap div part实现的新窗口上写下信息。然而,我的数据库一点也没有改变。请忽略。。。在代码中,我删除看起来很混乱的属性。代码可能有输入错误,因为我手动写下它来查找错误,但我没有找到 我尝试在view.py中,address_modify返回Httpresponsestreet,但它没有返回任何结果 view.py def address_modify(request, adid): cat = get_object_or_404(Ad
def address_modify(request, adid):
cat = get_object_or_404(Address, adid=adid)
if request.method == "POST":
old_adid = adid
email = request.user.email
street = request.POST.get("street", None)
city = request.POST.get("city", None)
...
Address.objects.filter(adid=adid).update(..., street=street, city=city, state=state, ...)
return redirect('/address/')
return redirect('/address/')
模板我把它命名为address.html
<button class="btn btn-success" data-toggle="modal" data-target="#modify">MODIFY</button>
<div class ="model fade" id="modify" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<from action="" method="POST">{% csrf_token %}
</div>
<div class="modal-body">
<input type="text" name="street">
<input type="text" name="city">
...
...
<input type="text" name="zipcode">
</div>
<div class="modal-footer">
<a href="{% url 'address_modify' i.adid %}">{% csrf_token %}
<button type="button" class="btn btn-primary">Save Change</button></a>
<div></form>
url.py
url(r'^address_modify/(?P<adid>[0-9]+)/$', MyAppView.address_modify, name='address_modify'),
在django中,最好的做法是创建一个forms.py文件来处理表单,您可以很容易地读取其中的数据,基本上表单将确保读取所有数据。这不是实现表单和表单提交的方式。你的链接没有提交任何内容,只是打开了一个链接。这是标准格式语法:
<form method="POST">
{% csrf_token %}
... your form input fields here ...
<input type="submit" value="Save changes">
</form>
然后修改视图以使用如下表单:
def address_modify(request, adid):
cat = get_object_or_404(Address, adid=adid)
form = AddressForm(instance=cat)
if request.method == 'POST':
form = AddressForm(request.POST, instance=cat)
if form.is_valid():
form.save()
return redirect('/address/')
else:
print(form.errors) # change to logging
return render(request, 'address.html', {'form': form})
检查一下房间。这些基础都在那里。也许你需要一到两天的时间才能度过难关,但从长远来看,这远比猜测和谷歌搜索几天的基本信息要少得多
def address_modify(request, adid):
cat = get_object_or_404(Address, adid=adid)
form = AddressForm(instance=cat)
if request.method == 'POST':
form = AddressForm(request.POST, instance=cat)
if form.is_valid():
form.save()
return redirect('/address/')
else:
print(form.errors) # change to logging
return render(request, 'address.html', {'form': form})