Bonjour,
J'ai créé un package Users tout simpleetplacé dans \packages (à la racine de laravel), dont voici l'organisation casse respectée):
laravel-5\packages\monvendor\users\src\composer.json
laravel-5\packages\monvendor\users\src\app\Http\Controllers\UsersController.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 { "name": "monvendor/users", "description": "test", "authors": [ { "name": "moi", "email": "moi@home.com" } ], "minimum-stability": "dev", "require": {}, "autoload": { "psr-4": { "Monvendor\Users\": "src/" } } }
laravel-5\packages\monvendor\users\src\app\Providers\UsersServiceProvider.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?php namespace Monvendor\Users; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; class UsersController extends Controller { public function add($a, $b){ echo $a + $b; } }
laravel-5\packages\monvendor\users\src\routes\web.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <?php namespace Monvendor\Users; use Illuminate\Support\ServiceProvider; class UsersServiceProvider extends ServiceProvider { public function boot() { // Routes du package include DIR.'....\routes\web.php'; } public function register() { // register our controller $this->app->make('Monvendor\Users\UsersController'); } }
J'ai suivi les deux tutos :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?php // test avant ajout du controleur => fonctionnait ! Route::get('users', function(){ echo 'Hello from the monvendor\user package!'; }); // route pour tester le controleur => fonctionne pas (voir erreur plus bas) Route::get('add/{a}/{b}', 'UsersController@add');
https://devdojo.com/tutorials/how-to...aravel-package
https://laravel.sillo.org/creer-un-package/
Au moment du test de mon controleur : http://localhost/laravel-5/public/add/5/2
j'ai le message d'erreur :
Le problème semble venir de la méthode register de mon provider sur :ReflectionException (-1)
Class Monvendor\Users\UsersController does not exist
$this->app->make('Hspro\Users\UsersController');
mais je ne comprends pas pourquoi. Des idées svp?
Partager