【发布时间】:2011-09-11 19:05:25
【问题描述】:
我有一个简单的表单,正在尝试将其发布到一个简单的服务。
表单模型:
class order_form(forms.Form):
name = forms.CharField(max_length=100)
phone = forms.CharField(max_length=20)
email = forms.CharField(max_length=100)
address = forms.CharField(max_length=200)
ordered_picture = forms.CharField()
视图(尚未对所有 clear_data 位和内容进行排序):
def place_order(request):
result = dict()
if request.method == 'POST':
try:
form = order_form(request.POST)
if not picture.objects.filter(id=form.ordered_picture).exists():
result['status'] = 'error'
result['message'] = 'Ordered picture does not exist'
new_order = order()
new_order.name = form.data.name
new_order.phone = form.data.phone
new_order.email = form.data.email
new_order.address = form.data.address
new_order.ordered_picture = int(form.data.ordered_picture)
new_order.save()
result['status'] = 'ok'
result['message'] = new_order.id
except Exception, e:
result['status'] = 'error'
result['message'] = e.message
else:
result['status'] = 'error'
result['message'] = 'Only HTTP POST Method is supported by this service'
return HttpResponse(content=simplejson.dumps(result))
这是进入的 POST 数据的副本:
csrfmiddlewaretoken:77d1ba277ef43838e670f598c2a128b6
name:qwe
phone:qwe
email:qwe
address:qwe
ordered_picture:1
我得到以下信息:
{"status": "error", "message": "'order_form' object has no attribute 'ordered_picture'"}
在尝试 form = order_form(request.POST) 之后,这个“对象没有属性”的东西正在异常中弹出。我快要崩溃了 - 为什么这告诉我表单实际上没有这个属性?
【问题讨论】: