Я не могу добавить пользователя в laravel - PullRequest
0 голосов
/ 11 февраля 2020

Я создал систему управления сотрудниками в Laravel и хочу добавить пользователя. Администратор может редактировать, добавлять и удалять пользователя. Редактирование и удаление - это хорошо, но проблема с дополнительным пользователем, форма, которую он не отправляет для добавления пользователя, выдает мне ошибку!

это create.blade. php file

@extends ('layouts.master')

@section('title')
    Add Employee | Admin
@endsection

@section('content')


<div class="container">
  <div class="row">
    <div class="col-md-12">
      <div class="card">
        <div class="card-body">
          <div class="card-header">
            <h3>Add  Employee.</h3>
          </div>
          <div class="card-body">
            <div class="col-md-6">
            <form action="/create" method="POST">
                {{ csrf_field() }}
                {{ method_field('PUT') }}

                <div class="form-group">
                    <label>Name</label>
                    <input type="text" name="name" value="{{ $users->name }}" class="form-control">               
                </div> 
                <div class="form-group">
                    <label>Last Name</label>
                    <input type="text" name="lastname" value="{{ $users->lastname }}" class="form-control">               
                </div> 
                <div class="form-group">
                    <label>Phone</label>
                    <input type="text" name="phone" value="{{ $users->phone }}" class="form-control">               
                </div>          
                <div class="form-group">
                    <label>Email address</label>
                    <input class="form-control" type="email"  value="{{ $users->email }}"name="email" id="email">               </div>
                <div class="form-group">
                    <label>Job Title</label>
                    <input type="text" name="jobtitle" value="{{ $users->jobtitle }}" class="form-control">               
                </div> 
                <div class="form-group">
                    <label>Department</label>
                    <input type="text" name="department" value="{{ $users->department }}" class="form-control">               
                </div>
                <button type="submit" class="btn btn-success"> Save </button>
                </form>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>
@endsection

@section('scripts')

@endsection

dashboardcontroller. php

<?php

namespace App\Http\Controllers\Admin;

use App\User;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class DashboardController extends Controller
{
    public function registered()
    {
        $users = User::all();
        return view('admin.register')->with('users', $users);
    }

    public function registeredit(Request $request, $id)
    {
        $users = User::findOrFail($id);
        return view('admin.register-edit')->with('users',$users);
    }

    public function registerupdate(Request $request, $id)
    {
        $users = User::find($id);
        $users->name = $request->input('name');
        $users->lastname = $request->input('lastname');
        $users->phone = $request->input('phone');
        $users->email = $request->input('email');
        $users->jobtitle = $request->input('jobtitle');
        $users->department = $request->input('department');
        $users->update();
        return redirect('/role-register')->with('status','Your Data is Updated');
    }

    public function registerdelete($id)
    {
        $users = User::findOrFail($id);
        $users->delete();

        return redirect('/role-register')->with('status','Your Data is Deleted');

    }


    public function index()
    {
        $users=DB::table('users')->paginate(10);
        //$users = User::all();
        return view('admin.dashboard',['users' => $users]);
    }


    public function department()
    {
        $users = User::all()->unique('department');
        return view('admin.department')->with('users', $users);
    }
    public function create()
    {
        $users = new User();
        //$user->save();
        return view('admin.create')->with('users', $users);


    }


}

web. php

<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});


Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

Route::group(['middleware' => ['auth','admin']], function  () {
    Route::get('/dashboard', function () {
        return view('admin.dashboard');
    });

    Route::get('/role-register','Admin\DashboardController@registered');

    Route::get('/role-edit/{id}', 'Admin\DashboardController@registeredit');

    Route::put('/role-register-update/{id}', 'Admin\DashboardController@registerupdate');

    Route::delete('/role-delete/{id}', 'Admin\DashboardController@registerdelete');

    Route::get('/dashboard', "Admin\DashboardController@index");

    Route::get('/department', 'Admin\DashboardController@department');

    Route::get('/create', 'Admin\DashboardController@create');

});

Мне выдается эта ошибка: Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException Метод PUT не является поддерживается для этого маршрута. Поддерживаемые методы: GET, HEAD. Я искал эту ошибку, но я не получаю никаких результатов. Заранее спасибо

1 Ответ

0 голосов
/ 11 февраля 2020

Измените свой метод получения маршрута на сообщение

 Route::post('/create', 'Admin\DashboardController@create');

Также измените свой контроллер

public function create(Request $request)
{
    $users = new User;
    $users->name = $request->name;
    $users->lastname = $request->lastname;
    ......add other input rows here----
    $users->save();
    return view('admin.create')->with('users', $users);


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