2016-12-16 6 views
1

사용자가 항목을 만들 수있는 양식이 있습니다. 그러나 양식이 제출되고 유효성 검사를 통과하지 못하면 이전 입력 내용이 기억되지 않고 단순히 삭제되어 사용자에게 실망 스럽습니다.유효성 검사 실패시 Laravel 5.3 양식이 이전 입력을 유지하지 않음

나는이에 대한 laravelcollective 양식을 사용하고 내 html로 보이는 같은 :이처럼 이전 입력

{{ Form::text('name', old('name') , ['placeholder' => 'hello world' ,'class' => 'form-control']) }} 

를 유지하지 않는에서 이전 값을 넣어에도

{{ Form::open(['route' => 'my.route', 'class' => 'form-horizontal', 'files' => true]) }} 

<div class="form-group"> 
    {{ Form::label('name', 'Name', ['class' => 'control-label col-md-3']) }} 
    <div class="col-md-9"> 
     {{ Form::text('name', null, ['placeholder' => 'hello world' ,'class' => 'form-control']) }} 
    </div> 
</div> 

<div class="form-group"> 
    {{ Form::label('description', 'Description', ['class' => 'control-label col-md-3']) }} 
    <div class="col-md-9"> 
     {{ Form::textarea('description', null, ['placeholder' => 'hello world', 'class' => 'form-control']) }} 
     <span>some sub-text</span> 
    </div> 
</div> 

<div class="form-group"> 
    {{ Form::label('date', 'Date', ['class' => 'control-label col-md-3']) }} 
    <div class="col-md-9"> 
     {{ Form::text('date', null, ['placeholder' => 'hello world', 'class' => 'form-control']) }} 
    </div> 
</div> 

{{ Form::close() }} 

내 ItemRequest가 유효성 검사를 수행하는 곳에서 백엔드에 항목을 저장하는 메소드.

public function store(ItemRequest $request, ImageMagick $imageMagick) 
{ 
    $item = new Item; 
    $item->name = $request->name; 
    $item->description = $request->description; 
    $item->date = $request->date; 

    $item->save(); 
    return redirect()->route('some.other.route'); 
} 

왜 오래된 입력이 기억되지 않는지 알아 내려고합니다.

+0

'ItemRequest'를 게시 할 수 있습니다. – Vuldo

답변

3

사용 withInput()이 같은 리디렉션 경로 방법의 끝 부분에있어서,

// If validation failed, use this method to make the old inputs available in the view 
return redirect()->route('some.other.route')->withInput(); 

이 도움이 더 약 Old Inputs in Laravel

희망을 참조하십시오!

+2

양식 요청을 사용했기 때문에 유효성 검사가 실패 할 때 호출되지 않습니다. – Vuldo

+0

@Vuldo - 좋은 답변, 내 대답을 업데이트했습니다! 고마워 –