Je crée un projet dans lequel je souhaite que l'utilisateur recherche des boutiques dans différentes villes et souhaite que l'URL ressemble à ceci: domain/shop/city/name. J'ai donc créé un contrôleur dans le codeigniter appelé Shop. Mais je ne peux pas créer une fonction de ville puisque la partie ville de l'url change en fonction du nom de la ville. Une façon simple de le faire serait d'ajouter une fonction appelée "search" et d'ajouter la fonctionnalité là-bas, mais ensuite j'obtiens une URL comme: domain/shop/search/city/name que j'aimerais vraiment éviter.Codeigniter - Est-il acceptable d'ajouter des fonctionnalités au constructeur dans les contrôleurs?
Donc, ma question est de savoir si c'est correct d'ajouter ma fonctionnalité directement dans le constructeur pour éviter cette partie de "recherche" supplémentaire dans l'URL? J'ai peur qu'il puisse y avoir des astuces de performance qui gardent potentiellement la classe en mémoire pour que le constructeur ne soit pas appelé à chaque fois.
Je n'ai trouvé aucun moyen de le faire par routage, mais vous avez probablement raison sur mod_rewrite. Merci! – Irro
L'utilisation du routage permet de résoudre ce type de problème, et le guide de l'utilisateur de CI fournit des instructions claires sur son utilisation. – Kurucu
Mon mauvais, je l'ai disséqué façon de jeûner. C'était parfait pour ce que j'avais besoin de faire: $ route ['shop/([\\ w] *)'] = "shop/search/$ 1"; – Irro