Welcome Guest, Not a member yet? Register   Sign In
Routes Configuration

(This post was last modified: 09-13-2018, 05:12 AM by Nome.)

What can be the cause of non-working paths by default.

in my: ..\application\Config\Routes
PHP Code:
$routes->setDefaultNamespace('Modules\Test\Controllers'); // $psr4 in autoload 'Modules\Test' => ROOTPATH.'modules/Test'

in my controller: ..\modules\Test\Controllers\Test
PHP Code:
<?php namespace Modules\Test\Controllers;
Test extends \CodeIgniter\Controller {
 public function index() {
   echo 'Ok!';

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: 

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)

Please show an example or tell me what's wrong, thanks!


set true discoverLocal


(09-11-2018, 09:20 PM)dannywebdev Wrote: application/Config/Routes.php

set true discoverLocal


This allows you to search for routes for the code modules... As you can see, I already use it "modules\Test\Controllers\Test"
But I'm interested in setDefaultController(), which should be displayed when accessing a domain or a path not found. But this for some reason does not happen, not from the main application directory not from the created one. Such a feeling that no one has yet used this =)

Theme © iAndrew 2016 - Forum software by © MyBB