django 양식 라이브러리를 사용하여 양식을 만들려고합니다. 그러나 양식으로 채워진 모델을 볼 때 값은 순서가 틀립니다. 명백한 이유가 없습니다.Django Form 주문은 비스무트입니다
Monday:
Tuesday:
Wednesday:
Thursday:
Friday:
Saturday:
Sunday:
:
여기<form action="" method="post">
<table>
{{ form.as_table }}
</table>
{% csrf_token %}
<input class="btn btn-primary" style="float: left;" type="submit" value="Submit">
</form>
는 결과 HTML 양식 (이 순서에 있습니다)입니다 : 여기
def reoccurring_view(request):
if request.method == 'POST':
form = ReoccurringForm(request.POST)
counter = 0
if form.is_valid():
for key, value in request.POST.iteritems():
counter += 1
if value is not None:
day = itemize(value, counter)
add = Reoccurring(day.Day, day.N, day.S, day.E)
add.save()
else:
form = ReoccurringForm()
return render(request, 'Reoccurring.html', {'form': form})
내 템플릿입니다 : 여기
내이다 여기 내 양식 수업 :
그들은 이것을 there..is 안 여분의 위치와 함께, 순서가 ...
1 [u'monday'] [u'06:00 p.m.'] [u'07:30 p.m.']
2 [u'tuesday'] [u'06:00 p.m.'] [u'07:30 p.m.']
3 [u'friday'] [u'06:00 p.m.'] [u'07:30 p.m.']
4 [u'wednesday'] [u'08:30 a.m.'] [u'09:30 a.m.']
5 [u'thursday'] [u'06:00 p.m.'] [u'07:30 p.m.']
6 [u'sunday'] [u'06:00 p.m.'] [u'07:30 p.m.']
7 [] [] []
8 [u'saturday'] [u'06:00 p.m.'] [u'07:30 p.m.']
당신이 볼 수있는 : 아직 여기 966,853,210
이다는 관리자를 통해 결과 인구 모델 버그? (EDIT : csrf 토큰은 dict에 전달되지만 쉽게 무시됩니다.)하지만 순서는 여전히 수수께끼입니다!
감사합니다.
편집 : 더 조사를 I 출력 자체를 DICT를 결정하고이 파손되지 않았는지 그리고 왜하지만), 아무 생각이 없었다 :
> <QueryDict: {u'monday': [u'monday, 06:00 p.m. to 07:30 p.m.'],
> u'tuesday': [u'tuesday, 06:00 p.m. to 07:30 p.m.'], u'friday':
> [u'friday, 06:00 p.m. to 07:30 p.m.'], u'wednesday': [u''],
> u'thursday': [u'thursday, 06:00 p.m. to 07:30 p.m.'], u'sunday':
> [u'sunday, 06:00 p.m. to 07:30 p.m.'], u'csrfmiddlewaretoken':
> [u'AcxRjdNeTFwij7vwtdplZPy2SRlwrnzl'], u'saturday': [u'saturday, 06:00
> p.m. to 07:30 p.m.']}>
심지어 명시 적으로 필드의 순서를 설정하려고 :
def __init__(self, *args, **kwargs):
super(ReoccurringForm, self).__init__(*args, **kwargs)
self.fields.keyOrder = [
'monday',
'tuesday',
'wednesday',
'thursday',
'friday',
'saturday',
'sunday']
그러나 이것은 전혀 차이가 없습니다 ... 그것은 순서가 올 것 같다,하지만 POST의 DICT에의 데이터의 처리는 어떻게 든 엉망지고, 어떤 통찰력이 크게 감사하겠습니다!
양식이 렌더링되거나 해당 QueryDict를 덤프하는 경우에만 순서가 잘못됩니까? – Krab
렌더링 된 폼이 원래 질문과 같이 정확했기 때문에 렌더링 된 순서가 정확하다는 것을 지정하고 주목했습니다. POST 덤프가 잘못되었습니다. – ljrh