Routage des contrôleurs dans les sous-dossiers à l'aide de CodeIgniter
depuis, je veux séparer le frontend et le backend du système. j'ai créé 2 dossiers à l'intérieur de contrôleurs comme le frontend et backend
Ci-dessous est la structure de mon dossier contrôleur
controller
--frontend
---store.php
---processing.php
---profile.php
---authenticate.php
---register.php
--backend
---authenticate.php
---stats.php
---users.php
---property_manage.php
---register.php
je peux accéder à des fonctions à l'aide
frontend/store/add
frontend/store/manage
......
backend/stats/sales
backend/stats/payments
.....
mais je veux enlever le frontend et le backend segments à partir de l'url.
J'ai vérifié la fonctionnalité de routage dans codeigniter, mais selon mes connaissances, j'ai besoin de spécifier individuellement chaque itinéraire. Depuis que j'ai environ 12 contrôleurs et chacun a environ 10 -15 fonctions je pourrais avoir à préciser à chaque fonction de l'itinéraire.
est-il un autre moyen efficace pour obtenir de l'aide de routage ou de toute autre façon? (sans utiliser htaccess)
OriginalL'auteur LiveEn | 2012-12-19
Vous devez vous connecter pour publier un commentaire.
Ce faire:
Même pour le backend :
Vous n'avez pas à créer chaque règle dans routes.php pour chaque fonction du contrôleur, plutôt une règle par le contrôleur sera suffisant comme mentionné ci-dessus.
URI de Routage : CodeIgniter Guide de l'Utilisateur
$1
représente la première expression, ici(:any)
est l'expression, vous pouvez avoir plusieurs expression sur chaque règle, et l'expression est représentée comme$1
,$2
et ainsi de suite sur l'autre côté.De même,
(:num)
va correspondre à un segment contenant uniquement des chiffres,(:any)
va correspondre à un segment contenant tous les caractères,(\d+)
va correspondre à un chiffre,([a-z]+)
correspondent à n'importe quelle alpha texte.$1 représente la première expression, ici (:) est l'expression, vous pouvez avoir plusieurs expression sur chaque règle, et l'expression est représentée par $1, $2 et ainsi de suite sur l'autre côté
(:num) va correspondre à un segment contenant uniquement des chiffres, (:tous) va correspondre à un segment contenant n'importe quel caractère, (\d+) correspond à tous les chiffres, ([a-z]+) correspond à toute alpha texte
bien compris.. merci 🙂
Cela ne fonctionnera pas si les contrôleurs ont le même nom (par exemple, à partir de sa propre structure: register.php et processing.php).
OriginalL'auteur hsuk
Vous devez être en mesure de différencier le frontend depuis le backend en quelque sorte. Peut-être définir un itinéraire qui transmet des uri avec "admin" pour le backend, et rien sans "admin" pour le frontend.
OriginalL'auteur swatkins
Pour le Front-End, vous pouvez ajouter ce dans routes.php:
donc dans le navigateur l'URL, il n'est pas nécessaire d'inclure le "frontend"
OriginalL'auteur Vishnu Ugale