为什么我有POST方法,如果到处都是GET方法?

时间:2017-11-27 09:43:04

标签: laravel post get

我想通过参数进行搜索。但它显示我混合了GET和POST方法。 (错误消息:MethodNotAllowedHttpException 没有消息)。默认情况下,刀片表单有POST。我改为GET。路线有GET方法。也许你可以看到我做错了什么。这是我的观点:

{!! Form::open([ 'action' => ['HomePageController@index', 'method' => 'get']]) !!}
<div class="container">
    <div class="col-xs-2 form-inline">
        {!! Form::label('city_id', trans('quickadmin.companies.fields.city').'', ['class' => 'control-label']) !!}
        {!! Form::select('city_id', $cities, old('city_id'), ['class' => 'form-control select2') !!}
    </div>

    <div class="col-xs-3 form-inline">
        {!! Form::label('categories', trans('quickadmin.companies.fields.categories').'', ['class' => 'control-label']) !!}
        {!! Form::select('categories', $categories, old('categories'), ['class' => 'form-control select2']) !!}
    </div>
    <div class="col-xs-3 form-inline">
        {!! Form::label('search', trans('quickadmin.companies.fields.name').'', ['class' => 'control-label']) !!}
        {!! Form::text('search', old('search'), ['class' => 'form-control', 'placeholder' => 'Search']) !!}
    </div>
    <div class="form-inline">
        <div class="col-xs-2">
            <button type="submit"
                    class="btn btn-primary">
                    Search
            </button>
        </div>
    </div>
</div>

{!! Form::close() !!}

我的控制器:

    public function index( Request $request)
{
    $cities = \App\City::get()->pluck('name', 'id')->prepend(trans('quickadmin.qa_please_select'), '');
    $categories = \App\Category::get()->pluck('name', 'id')->prepend(trans('quickadmin.qa_please_select'), '');
    $name = $request->input('city_id');
    $companies = \App\Company::All()->where('city_id', '=', $name);

    return view('table', compact('companies', $companies, 'cities', $cities, 'categories', $categories));

我的路线:

 Route::get('/', 'HomePageController@index');

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

打开表单有问题,请尝试这样:

{!! Form::open([ 'action' => 'HomePageController@index', 'method' => 'get']) !!}