Кнопка ссылки не работает в Laravel - PullRequest
0 голосов
/ 09 июня 2018

Я хочу отредактировать запись в приложении CRUD на laravel, где у меня есть кнопка, которая была связана для перехода к представлению индекса, но когда я нажимаю на нее, она перенаправляет меня к методу UPDATE контроллера.
Это моя форма:

{!! Form::open(['route' => ['players.update', $player->id], 'method' => 'PUT', 'files'=>'true']) !!}

                    <div class="row col-md-10 col-md-offset-1 panel">
                        <div class="col-md-8 col-md-offset-2">

                        <br />

                          <div class="form-group">
                            {{ Form::label('name', 'Player Name') }}
                            {{ Form::text('name', $player->name, ['class' => 'form-control']) }}
                          </div>

                          <div class="form-group">
                                {{ Form::label('file', 'Upload Image') }}
                                {{ Form::file('pic') }}

                            </div>

                            <div class="form-group">

                              {{Form::button('Save Record', ['type' => 'submit', 'class' => 'btn btn-success'])}}
                              {!! Form::close() !!}

                              <a href="{{ route('players.index') }}">
                                <button class="btn btn-danger" >Cancel</button>
                              </a>

                            </div>
                        </div>
                    </div>   

У меня есть следующая кнопка для возврата на страницу индекса, но это приводит меня к методу UPDATE контроллера:

<a href="{{ route('players.index') }}">
    <button class="btn btn-danger" >Cancel</button>
</a>  

Этомой метод индексации в контроллере:

public function index()
{
    $players = Player::paginate(5);
    return view('players.index', compact('players'));
}  

Это метод ОБНОВЛЕНИЯ в контроллере:

public function update(Request $request, $id)
{
    return "Hi";
}    

Это содержимое моего файла маршрута:

Route::resource('news', 'NewsController');

Route::resource('competition', 'CompetitionsController');

Route::resource('players', 'PlayersConroller');

Все выглядит хорошо для меня, но я не знаю, что здесь не так.
Любая помощь приветствуется заранее.

1 Ответ

0 голосов
/ 09 июня 2018

Я не уверен, что это решит вашу проблему, попробуйте ввести код кнопки за пределами группы форм.

Вы можете изменить свой код как

<a href="{{ route('players.index') }}" class="btn btn-danger">Cancel</a>

Вы можетепроверьте ваш HTML-код, который вы поместили внутри тега формы, какой тип отправки, поэтому он отправляет форму снова.

Замените код формы на:

<div class="row col-md-10 col-md-offset-1 panel">
    <div class="col-md-8 col-md-offset-2">

        {!! Form::open(['route' => ['players.update', $player->id], 'method' => 'PUT', 'files'=>'true']) !!}
        <br />

        <div class="form-group">
            {{ Form::label('name', 'Player Name') }} {{ Form::text('name', $player->name, ['class' => 'form-control']) }}
        </div>

        <div class="form-group">
            {{ Form::label('file', 'Upload Image') }} {{ Form::file('pic') }}

        </div>

        <div class="form-group">

            {{Form::button('Save Record', ['type' => 'submit', 'class' => 'btn btn-success'])}}

        </div>
    {!! Form::close() !!}
    </div>
    <a href="{{ route('players.index') }}">
        <button class="btn btn-danger">Cancel</button>
    </a>

</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...