2013-04-09 2 views
2

저는 Laravel과 함께 "단계별"양식을 만들려고합니다. 내가 가지고있는 문제는 사용자가 "뒤로"이동하여 양식의 이전에 제출 된 부분을 편집하게하는 방법입니다. 나는 정기적으로 검증 물건을하고 있어요Laravel에서 단계가있는 양식을 작성하는 방법은 무엇입니까?

가 여기에 양식 필드의 예 :

{{ Form::text('title', Input::old('title') }}

그런 다음 해당 단계에 대한 양식 유효성 검사를 통과하면, 이것은 세션으로 저장됩니다 배열과 사용자는 양식의 다음 부분으로 이동합니다.

내가 원하는 것은 이전 단계로 돌아갈 수있는 각 단계의 "뒤로"단추입니다. 문제는 입력의 value 매개 변수가 Input::old()입니다.

{{ Form::text('title', (!empty($current)) ? $current['title'] : Input::old('title')) }}

이 있습니까 : 입력 내 구문은 다음과 같을 것이다, 그래서 내가 할 수있는

것은, 특정 단계에 대한 세션이를 "현재"와 같은 변수를 지정하고 설정입니다 이렇게하는 더 좋은 방법?

답변

1

각 페이지의 입력이 페이지 번호 아래에 저장된 다차원 배열이있을 수 있습니다.

$saved = Session::get('inputtedstuff'); 
$current = $saved['page1']; 

는 다음 중 페이지 당신은 당신이 잡을 수에있는 그 페이지 이전 답변을 어떤이있는 경우. 끝으로 모든 답변을한데 모아 나중에 사용할 수 있도록 편평한 배열로 매핑 할 수 있습니다.

양식의 복잡성에 따라 양식을 모두 한 페이지에서 수행하고 자바 스크립트를 사용하여 각 파트를 표시하는 것도 고려해보십시오. 그냥 생각.

6

ShawnMcCool의 Form Base Model은 못생긴 삼진이 필요없는 입력 값을 처리하고 다중 페이지 양식을 지원하기위한 좋은 메커니즘을 제공합니다. 여기에 어떤 코드도 나열하지 않고 번들의 예를 읽어 보시기 바랍니다.

https://github.com/ShawnMcCool/laravel-form-base-model#examples

관련 문제