У меня есть простая форма, и я пытаюсь отправить ее в простую службу.
Модель формы:
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()
представление (не отсортированы все биты cleared_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'"}
this "у объекта нет атрибута "вещь выдается в Exception сразу после попытки form = order_form (request.POST).Я собираюсь сломать голову - почему это говорит мне, что форма не имеет этого атрибута, когда она есть в реальности?