Fre*_*son 5 django django-forms
我更喜欢我的主键字段在我的编辑页面中不可见.如果我将其设置为AutoField,则不会在HTML表单中呈现它.但是主键值也不在我的POST数据中.有没有一种简单的方法将AutoField渲染为隐藏字段?
如果您不打算让用户能够更改表单上的内容,则应将其放在URL或其他上下文中.否则,您将面临安全问题(或至少是额外的用例).
在urls.py中:
(r'^edit/?P<my_id>[\d]+)/$', views.edit),
Run Code Online (Sandbox Code Playgroud)
并在view.py中:
from django.shortcuts import render_to_response, get_object_or_404
from models import MyModel
def edit(request, my_id):
obj = get_object_or_404(MyModel, id=my_id)
if request.POST:
form = MyForm(request.POST, instance=obj)
if form.is_valid():
form.save()
#
# do other stuff....
#
else:
form = MyForm(instance=obj)
return render_to_response(template_name, {
"form": form
}, context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5917 次 |
| 最近记录: |