2011-12-16 3 views
1

많은 필드가있는 사용자 모델이 있습니다 (이 예에서는 30이라고 가정). 사용자가 로그인을하면 처음 10 개만 채 웁니다. 로그인 한 후 정보를 완성하기를 원하면 나머지 페이지를 완료 할 수있는 두 페이지가 있습니다 (한 페이지는 11-20을 처리하고 다른 페이지는 21 -30).여러 페이지에 걸쳐 레일 모델 유효성 검사

그래서 11-20을 처리하는 첫 페이지를 쳤을 때 모든 필드를 채우고 싶습니다. 3 개의 답변을 선택하고 나머지는 "선택하십시오").

21-30을 처리하는 두 번째 페이지와 동일합니다.

이 문제를 해결하는 가장 좋은 방법은 무엇입니까? 내가 activerecord와 레일 3.1을 사용하고 있습니다. 내 모델에 다음을 추가하는 것과 같은 간단한 작업을 수행하면 모든 필드를 채우지 않고 사용자를 만들 수 없습니다 ("validates : user_summary, : presence => true").

감사합니다.

+0

[이 다른 유래 스레드] [1] 도움이 될 수 있습니다 [1] : http://stackoverflow.com/questions/2603464/how-to-create-wizard-forms-in-ruby- on-rails – leonardoborges

+0

내가 가진 한 가지 아이디어는 두 가지 모델을 만드는 것이 었습니다. 사용자를위한 것. 사용자 추가 정보 및 예비 정보가 아닙니다. 따라서 2 ~ 3 페이지에 모델에 대한 검증 요구 사항이 있습니다. 이것이 최선의 아이디어인지는 잘 모르겠지만 코멘트입니다. – Trip

답변

3

이 유형의 문제를 처리하기 위해 다단계 양식 (일명 마법사)을 구현할 수도 있습니다.

라이언 베이츠

Multistep form tutorial

는 다단계 양식 거기에 아마 보석 있습니다 주제에 좋은 자습서를했다

또 다른 방법은 링크에 갈 수있는 부분 validation.You을 구현하는 것 아래 주제에 관한 훌륭한 블로그 게시물입니다.

Partial validation blog post

은 시작하는 데 도움이되기를 바랍니다.

+0

좋은 정보! 감사! – Jason