Laravel, показывающий ошибку Слишком мало аргументов для функции App \ Http \ Controllers \ UserController :: admin_side_update (), 1 пройдено и ровно 2 ожидается - PullRequest
0 голосов
/ 05 февраля 2019

Я сделал функцию, отличную от ресурса, и я пытаюсь обновить свои данные, и на странице обновления отображается ошибка.Я решаю эту ошибку, которую пытался устранить, но не смог найти способ передать вторую переменную Error Page Image

Edit.blade.php

    @extends('home')

@section('title', '| Edit User')

@section('dashboard')

<div class='col-lg-4 col-lg-offset-4'>

    <h1><i class='fa fa-user-plus'></i> Edit {{$user->name}}</h1>
    <hr>

     <form action="{{ route('users.updated', ['id' => $user->id]) }}" method="post" enctype="multipart/form-data">
      {{ csrf_field() }}

    <div class="form-group">
        <label for="name" class="col-sm-2 col-form-label">Name *</label>

            <input type="text" class="form-control col-sm-10" id="name" name="name"
             value="{{$user->name}}" />
    </div>


    <div class="form-group">
        <label for="email" class="col-sm-2 col-form-label">Email *</label>

            <input type="email" class="form-control col-sm-10" id="email" name="email"
             value="{{$user->email}}" />
    </div>


    <h5><b>Give Role</b></h5>

    <div class='form-group'>
        @foreach ($roles as $role)
            <input class="form-check-input" type="checkbox" name="roles[]" value="{{ $role->id }}">  
  <label class="form-check-label" for="defaultCheck1">
    {{$role->name}}
  </label>
        @endforeach
    </div>

    <div class="form-group">
       <label for="password" class="col-sm-2 col-form-label">Password *</label>

            <input type="password" class="form-control col-sm-10" id="password" name="password"
            value="{{$user->password}}" />

    </div>

    <div class="form-group row"  style="margin:5%;">

            <button type="submit" class="btn btn-primary col-sm-3 col-sm-offset-3">Edit User</button>
      </div>
  </form>


</div>

@endsection

Web.php

    Route::get('users/{id}/change' ,'UserController@admin_side_edit');
        Route::post('users/savechanges/{id}', [
  'as' => 'users.updated',
  'uses' => 'UserController@admin_side_update'
]);

Это вызывает у меня ошибку, если кто-нибудь может помочь мне.

После изменений after update

1 Ответ

0 голосов
/ 05 февраля 2019

На самом деле вы не передаете идентификатор действия в клинке.

Для ваших действий в вашей форме вы можете использовать это:

{{ route('users.updated', ['id' => $user->id]) }}

И не забудьтедобавить параметры в маршрут

Route::post('users/savechanges/{id}', [
  'as' => 'users.updated',
  'uses' => 'UserController@admin_side_update'
]);

Надеюсь, это поможет вам.

...