Maison >développement back-end >tutoriel php >Nouveau dans EasyAdmin : de jolies URL
La fonctionnalité la plus demandée pour EasyAdmin vient d'arriver dans la version 4.14.0.
Depuis le premier jour, EasyAdmin utilise des paramètres de chaîne de requête pour transmettre les informations nécessaires
informations pour le rendu des pages backend. Cette approche a créé des URL telles que :
https://example.com/admin?crudAction=edit&crudControllerFqcn=App%5CController%5CAdmin%5CPostCrudController&entityId=3874
Bien que ce format d'URL soit moche, il est fonctionnel. Certains navigateurs, comme Safari, même
masquer la plupart de l'URL par défaut, en affichant uniquement le nom d'hôte, donc l'impact sur
les utilisateurs finaux sont minimes.
Cependant, à partir d'aujourd'hui, EasyAdmin génère des URL plus propres qui ressemblent à ceci :
https://example.com/admin/post/3874/edit
En plus d'être la fonctionnalité la plus demandée, nous avons implémenté ce changement pour
deux raisons principales :
Cette fonctionnalité a été conçue pour fonctionner de manière transparente avec les applications actuelles. Si
vous n'apportez aucune modification, l'application utilisera toujours des URL laides, et
tout continuera à fonctionner comme avant.
Si vous souhaitez commencer à utiliser de jolies URL maintenant, créez la configuration suivante
déposer dans votre candidature :
# config/routes/easyadmin.yaml easyadmin resource: . type: easyadmin.routes
Cette configuration active un chargeur de route Symfony personnalisé, une classe qui
génère automatiquement des itinéraires dans votre application. Videz le cache (en exécutant
php bin/console cache:clear ou rm -fr var/cache/*) et l'application le fera
commencez à utiliser de jolies URL. Exécutez la commande suivante pour voir tous les nouveaux générés
itinéraires :
php bin/console debug:router
Vous pouvez désormais également mettre à jour votre code pour arrêter de créer des URL backend avec le
Utilitaire AdminUrlGenerator et utilisez directement les nouveaux noms de routes :
// Before: $this->adminUrlGenerator() // this is only needed if you have ore than 1 dashboard ->setDashboard(SomeDashboardController::class) ->setController(ProductCrudController::class) ->setAction('detail') ->setEntityId(321) ->generateUrl(); // After: $this->router->generate('admin_product_detail', ['entityId' => 321]);
Les itinéraires générés sont composés de trois parties : tableau de bord crud action. Chacun
certains d'entre eux peuvent être personnalisés à l'aide des nouveaux attributs PHP #[AdminDashboard],
#[AdminCrud] et #[AdminAction]. Lisez la documentation pour en savoir plus.
Les jolies URL sont toujours facultatives dans les versions EasyAdmin 4.x, mais les URL laides le sont désormais
obsolète. À partir d'EasyAdmin 5.x (sortie prévue prochainement), jolies URL
sera requis.
✨ Si vous avez apprécié cette fonctionnalité et que vous souhaitez en voir davantage, pensez à
sponsoriser le projet EasyAdmin ??
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!