搜索表单没有';t提交laravel 5.3后显示旧值

搜索表单没有';t提交laravel 5.3后显示旧值,laravel,select,form-submit,blade,Laravel,Select,Form Submit,Blade,我有一个搜索表单,但它在提交时不显示以前选择的选项 这是我的表格: <form role="form" class="advanced-search-form" method="post" action="{{ url('/searchresults') }}"> {{ csrf_field() }} <div class="row"> <div class="col-md-4 form-group"> <labe

我有一个搜索表单,但它在提交时不显示以前选择的选项

这是我的表格:

<form role="form" class="advanced-search-form" method="post" action="{{ url('/searchresults') }}">
    {{ csrf_field() }}
    <div class="row">
    <div class="col-md-4 form-group">
        <label for="exampleSelect1">Select city: </label>
        <select class="form-control" id="exampleSelect1" name="selectcity">
            @if (count($cities) > 0)
                @foreach ($cities as $city)
                    <option value="{{$city->id}}" @if( old('selectcity')  == $city->id) selected="selected" @endif>{{$city->name}}</option>
                @endforeach
            @endif
        </select>
    </div>

    <div class="row">
        <div class="form-group col-md-4 col-md-offset-8">
            <button class="btn btn-light-blue-2 pull-right" type="submit">Search</button>
        </div>
    </div>
</form>

正如文件上写的那样

Lightning\Http\Request类上的flash方法将闪烁会话的当前输入,以便在用户下一次请求应用程序时可用:

$request->flash();
你应该使用这样的重定向

return redirect('yourTarget')->withInput();

在post方法上执行重定向,而不是返回视图。首先:当处理表单并希望填充它们时,您真的应该查看它们。第二,你为什么不使用城市模型而不是原始查询?第三,要重定向回表单并保留数据,可以使用redirect()->back()->withData()和include->with(compact('cities'),只有在将旧的输入数据闪存到会话时才起作用,如文档所述。如果要记住此数据,必须手动刷新或将所选值发送回您的页面。@larsemil谢谢您的提示。2.我还没有创建模型,我的第一种方法是使用DB查询。问题是我不想重定向回去,而是重定向到不同的位置view@Jerodev谢谢你的建议,解决了问题