Skip to main content

Module

Les modules sont à créer dans un dossier Modules à la racine du projet. Les modules sont des sous-applications qui peuvent être utilisées dans plusieurs applications.

Module documentation

Ci 4 module

Namespace

Il faut définir le namespace pour pouvoir utiliser les classes du module.

    public $psr4 = [
APP_NAMESPACE => APPPATH, // For custom app namespace
// Obligé d'écrire le chemin complet pour que ça fonctionne, on ne peut pas seulement mettre Modules
'Modules\WidgetIncludeCode' => ROOTPATH . 'Modules/WidgetIncludeCode',
'Modules\Mytest' => ROOTPATH . 'Modules/Mytest',
];

Routes

La configuration des routes du module se fait dans le fichier Routes.php du module (et pas dans App).

$routes->get('/test2','MyTestCtrl::index', ['namespace' => 'Modules\Mytest\Controllers']);
//ou
$routes->get('/test2', '\Modules\Mytest\Controllers\MyTestCtrl::index' );

Possibilité de grouper les routes dans un groupe de routes contenant un préfixe.

Optimisation

To avoid wasting time scanning for irrelevant Composer packages, you can manually specify packages to discover by editing the $composerPackages variable in app/Config/Modules.php:

Discovery modules