What can be the cause of non-working paths by default.
in my: ..\application\Config\Routes
in my controller: ..\modules\Test\Controllers\Test
When I was referring along the way, example.com received a response:
Controller or its method is not found: Modules\Test\Controllers\\\Test::index
The CodeIgniter4 User Guide says that:
Worked Only an explicit indication:
Please show an example or tell me what's wrong, thanks!
in my: ..\application\Config\Routes
PHP Code:
$routes->setDefaultNamespace('Modules\Test\Controllers'); // $psr4 in autoload 'Modules\Test' => ROOTPATH.'modules/Test'
$routes->setDefaultController('Test');
$routes->setDefaultMethod('index');
in my controller: ..\modules\Test\Controllers\Test
PHP Code:
<?php namespace Modules\Test\Controllers;
class Test extends \CodeIgniter\Controller {
public function index() {
echo 'Ok!';
}
}
Controller or its method is not found: Modules\Test\Controllers\\\Test::index
The CodeIgniter4 User Guide says that:
Quote:When a user visits the root of your site (i.e. example.com) the controller to use is determined by the value set by the setDefaultController() method, unless a route exists for it explicitly. The default value for this is Home which matches the controller at /application/Controllers/Home.php:
Worked Only an explicit indication:
PHP Code:
$routes->add('/', 'Test :: index'); // if Namespace 'App\Controllers' controller in \application\Controllers.
// OR if use group in \modules\Test\Config
$routes->group('test', ['namespace' => 'Modules\Test\Controllers'], function($routes)
{
$routes->get('/', 'Test::index');
Please show an example or tell me what's wrong, thanks!