Метод App \ Http \ Controllers \ UserController :: create не существует - PullRequest
0 голосов
/ 22 января 2020

У меня проблема при загрузке / usarios / create (/ user / create) и возвращается ошибка:

BadMethodCallException

Метод App \ Http \ Controllers \ UserController :: create не существует.

Веб-файл маршрута:

Auth::routes();
Route::get('/', 'HomeController@index')->name('home');
Route::resource('usuarios', 'UserController@index');

UserController:

<?php
namespace App\Http\Controllers;

use App\User;
use Illuminate\Http\Request;

class UserController extends Controller
{

public function index()
{
    $users = User::all( );
    return view( 'usuarios.index', ['users' => $users]);
}
}

function create()
{
    return view ('usuarios.create');
}

function store(Request $request)
{        
}

function show($id)
{        
}

function edit($id)
{    
}

function update(Request $request, $id)
{        
}

function destroy($id)
{        
}

Моя версия Laravel - 6,0

Любая помощь? Спасибо!

Ответы [ 2 ]

4 голосов
/ 22 января 2020

У вас есть дополнительный "}" на вашем контроллере, прямо под индексным методом.

И вам нужно закрыть класс, добавив метод} after destroy.

2 голосов
/ 22 января 2020

В Route::resource() есть 7 методов привязки.

Если вы хотите использовать Route::resource(), вам нужно передать два параметра, базовый путь и класс Controller. см.

ТАК, что вы должны пройти вот так.

Route::resource('usuarios', 'UserController');

Обратите внимание, что:

Route::resource('usuarios', 'UserController'); второй параметр - это имя класса контроллера.

, где вы используете Route::resource('usuarios', 'UserController@index');, это не класс, передача метода index завершается в классе UserController.

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