답변으로 제출 된 질문 목록이 무작위 인 응용 프로그램에 대해 동적 양식 모듈을 작업하고 있습니다. 내가 겪고있는 문제는 제출중인 Answer [] 배열이보기에 지정된 순서와 다르다는 것입니다. (즉,보기의 answer [0] .value가 응답 [3]. value로 컨트롤러에 입력됩니다). 뷰에 의해 제출 된 배열을 실제 배열로 처리하는 대신 정렬되지 않은 Set으로 이동 한 다음 컨트롤러로 들어가기 전에 다시 Array로 변환됩니다. 배열 주위를 정렬되지 않은 집합으로 취급하고 수동 색인을 사용해야하는 것 외에는이 방법이있을 수 있습니다.PlayFramework (1.2). 컨트롤러의 개체 배열 처리
내 컨트롤러는 기본적으로 내 템플릿에서
public static void process(Answer[] answers){ for(int i=0;i<answers.length;i++){ if(answers[i].question.required){ Validation.required("answers["+i+"].value,answers[i].value); } } if(Validation.hasErrors()){ //render the template }else{ //save } }
#{list items:questionSet.questions, as:"question"} ... <div class="#{if play.data.validation.Validation.hasError("anwsers["+question_index+'].value)}error#{/if}"> <input name="answers[${question_index}].question.id" value="${question.id}"/> <input name="answers[${question_index}].value" value="${answers[question_index].value}/> <div/> #{/list}
바꿀'목록'사용하는 경우'[]'배열을 답변 무엇? –