Size: a a a

2020 December 22

LD

Lugovskoy Dmitriy in Laravel Pro
Помогите разобраться с контроллерами.
Поставил сегодня заново Laravel
Создаю чистенький простенький контроллер, где
namespace App\Http\Controllers;

class HomeController extends Controller
{
   public function index(){
       return 'Hello World';
   }
}

В web.php указываю путь
Route::get('/', 'HomeConroller@index');

Но система пишетTarget class [HomeConroller] does not exist.

Я пока видимо не понимаю RouteServiceProvider
Там прописано в boot у меня:
$this->configureRateLimiting();

       $this->routes(function () {
           Route::prefix('api')
               ->middleware('api')
               ->namespace($this->namespace)
               ->group(base_path('routes/api.php'));

           Route::middleware('web')
               ->namespace($this->namespace)
               ->group(base_path('routes/web.php'));

           Route::pattern('id', '[0-9]+');
           Route::pattern('slug', '[A-Za-z0-9-]+');
       });
источник

ПЛ

Павел Ланчев... in Laravel Pro
имхо, количество проектов с  мультитаймзонами в разы меньше проектов для которых вполне хватает человекочитаемого формата
а так да, кому что удобнее
источник

ЕК

Егор Карась... in Laravel Pro
Lugovskoy Dmitriy
Помогите разобраться с контроллерами.
Поставил сегодня заново Laravel
Создаю чистенький простенький контроллер, где
namespace App\Http\Controllers;

class HomeController extends Controller
{
   public function index(){
       return 'Hello World';
   }
}

В web.php указываю путь
Route::get('/', 'HomeConroller@index');

Но система пишетTarget class [HomeConroller] does not exist.

Я пока видимо не понимаю RouteServiceProvider
Там прописано в boot у меня:
$this->configureRateLimiting();

       $this->routes(function () {
           Route::prefix('api')
               ->middleware('api')
               ->namespace($this->namespace)
               ->group(base_path('routes/api.php'));

           Route::middleware('web')
               ->namespace($this->namespace)
               ->group(base_path('routes/web.php'));

           Route::pattern('id', '[0-9]+');
           Route::pattern('slug', '[A-Za-z0-9-]+');
       });
Но система пишетTarget class [HomeConroller] does not exist.
источник

AS

Alek Sanders in Laravel Pro
Lugovskoy Dmitriy
Помогите разобраться с контроллерами.
Поставил сегодня заново Laravel
Создаю чистенький простенький контроллер, где
namespace App\Http\Controllers;

class HomeController extends Controller
{
   public function index(){
       return 'Hello World';
   }
}

В web.php указываю путь
Route::get('/', 'HomeConroller@index');

Но система пишетTarget class [HomeConroller] does not exist.

Я пока видимо не понимаю RouteServiceProvider
Там прописано в boot у меня:
$this->configureRateLimiting();

       $this->routes(function () {
           Route::prefix('api')
               ->middleware('api')
               ->namespace($this->namespace)
               ->group(base_path('routes/api.php'));

           Route::middleware('web')
               ->namespace($this->namespace)
               ->group(base_path('routes/web.php'));

           Route::pattern('id', '[0-9]+');
           Route::pattern('slug', '[A-Za-z0-9-]+');
       });
А то ниче, что в 8 ларе уже рауты поменялись?))
источник

ЕК

Егор Карась... in Laravel Pro
Lugovskoy Dmitriy
Помогите разобраться с контроллерами.
Поставил сегодня заново Laravel
Создаю чистенький простенький контроллер, где
namespace App\Http\Controllers;

class HomeController extends Controller
{
   public function index(){
       return 'Hello World';
   }
}

В web.php указываю путь
Route::get('/', 'HomeConroller@index');

Но система пишетTarget class [HomeConroller] does not exist.

Я пока видимо не понимаю RouteServiceProvider
Там прописано в boot у меня:
$this->configureRateLimiting();

       $this->routes(function () {
           Route::prefix('api')
               ->middleware('api')
               ->namespace($this->namespace)
               ->group(base_path('routes/api.php'));

           Route::middleware('web')
               ->namespace($this->namespace)
               ->group(base_path('routes/web.php'));

           Route::pattern('id', '[0-9]+');
           Route::pattern('slug', '[A-Za-z0-9-]+');
       });
HomeController
HomeConroller

Сравни две ети строки
источник

AS

Alek Sanders in Laravel Pro
Егор Карась
HomeController
HomeConroller

Сравни две ети строки
ну и как минимум это)
источник

ЕК

Егор Карась... in Laravel Pro
Lugovskoy Dmitriy
Помогите разобраться с контроллерами.
Поставил сегодня заново Laravel
Создаю чистенький простенький контроллер, где
namespace App\Http\Controllers;

class HomeController extends Controller
{
   public function index(){
       return 'Hello World';
   }
}

В web.php указываю путь
Route::get('/', 'HomeConroller@index');

Но система пишетTarget class [HomeConroller] does not exist.

Я пока видимо не понимаю RouteServiceProvider
Там прописано в boot у меня:
$this->configureRateLimiting();

       $this->routes(function () {
           Route::prefix('api')
               ->middleware('api')
               ->namespace($this->namespace)
               ->group(base_path('routes/api.php'));

           Route::middleware('web')
               ->namespace($this->namespace)
               ->group(base_path('routes/web.php'));

           Route::pattern('id', '[0-9]+');
           Route::pattern('slug', '[A-Za-z0-9-]+');
       });
А воще, в RouteServiceProvider можно написать

protected $namespace = 'App\Http\Controllers';

Это если хочется использовать как раньше
источник

LD

Lugovskoy Dmitriy in Laravel Pro
Да, ошибку в буковке увидел.
Route::get('/', 'HomeController@index'); (исправил)
Но он по прежнему не может его найти
источник

ЕК

Егор Карась... in Laravel Pro
Но крутые пацаны пишут так
Route::get('/', [HomeConroller::class, 'index']);
источник

ЕК

Егор Карась... in Laravel Pro
Кажется.
Я по памяти, я же не крутой пацан
источник

LD

Lugovskoy Dmitriy in Laravel Pro
Да, если полностью прописать
Route::get('/', [\App\Http\Controllers\HomeController::class, 'index']);
То идет. Забыл совсем, чтоб писать так как писал раньше надо было просто заюзить данный контроллер еще в начале
источник

AP

Alexander Pavlenko 🌚... in Laravel Pro
🌚
источник

ЕК

Егор Карась... in Laravel Pro
Lugovskoy Dmitriy
Да, если полностью прописать
Route::get('/', [\App\Http\Controllers\HomeController::class, 'index']);
То идет. Забыл совсем, чтоб писать так как писал раньше надо было просто заюзить данный контроллер еще в начале
Ты всё ещё можешь сделать use \App\Http\Controllers\HomeController;
источник

LD

Lugovskoy Dmitriy in Laravel Pro
вот и я про это
источник

LD

Lugovskoy Dmitriy in Laravel Pro
старая запись моя не прошла, видимо в 7-ке нормально, а сейчас 8-я версия стоит. И помогла только
Route::get('/', [HomeController::class, 'index']);
источник

AP

Alexander Pavlenko 🌚... in Laravel Pro
ну да
источник

AP

Alexander Pavlenko 🌚... in Laravel Pro
в 8й версии как бы поменялось немножко в роутах там всякое
источник

AP

Alexander Pavlenko 🌚... in Laravel Pro
источник

LD

Lugovskoy Dmitriy in Laravel Pro
я еще только докум. изучаю, тем более что с английским пока не очень, учу.
источник

ЕК

Егор Карась... in Laravel Pro
Lugovskoy Dmitriy
старая запись моя не прошла, видимо в 7-ке нормально, а сейчас 8-я версия стоит. И помогла только
Route::get('/', [HomeController::class, 'index']);
А воще, в RouteServiceProvider можно написать

protected $namespace = 'App\Http\Controllers';


Тогда можно так:
Route::get('/', 'HomeController@index');
источник