양식에 동적으로 필드를 추가 할 수있는 클라이언트 측 자바 스크립트를 내 템플리트에 넣습니다. 내 문제는 이러한 필드는 form.cleaned_data
에 정리되어 있으므로 그렇게 액세스 할 수 없다는 것입니다.동적으로 추가 된 양식 필드는 form.cleaned_data에서 제거됩니다.
모든 필드는 request.POST
에서 액세스 할 수 있으므로이 문제를 해결할 수는 있지만 "올바른 방법"으로 수행하려고합니다. 해결책은 요청을 읽는 대신 장고 양식을 사용하는 것입니다. 직접.
form.clean()
을 덮어 쓰려고했지만 데이터가 이미 도착할 때까지 이미 사라진 것처럼 보입니다.
기타 세부 정보 :이 필드의 이름은 fieldname_x
이며, x
은 숫자입니다. request.POST
에서 request.POST['fieldname']
은 모든 값의 목록이지만 form.cleaned_data
은 각 목록의 마지막 값만 포함합니다.
랄프에, 당신이 그것에 대해 먼 길을 갔어요 제안했다. Python을 활용하고 Django 시스템으로 일을합니다. 필요한 경우 모델과 양식을 동적으로 작성하십시오. 내 대답을 보라. –
"leverage python" "과 Django"는 확률이 높습니다. 당신은 확실히 파이썬의 역 동성을 이용했지만 확실히 장고 방법으로 사용했습니다. 그들은 특별히 empty_form을 JS 스크립트에서 사용할 수 있도록 폼에 form/fields를 추가 할 수 있도록하기 위해 empty_form을 넣었습니다. 추가 필드를 해킹 할 필요가 없습니다. – mpen
빈 폼 설명을 자바 스크립트가 폼에 여분의 필드를 추가하는 것이 아니라 폼에 추가하는 것을 허용하는 것으로 해석합니다. 당신은 당신이 그것을했던 방식이 고통스럽고, 많은 문자열 프로세싱을 포함하고, 평범한 나쁜 것이 었습니다. 내 솔루션은 4 줄의 코드이며 유지 관리가 매우 쉽습니다. –