> For the complete documentation index, see [llms.txt](https://akyos.gitbook.io/book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://akyos.gitbook.io/book/symfony/un-code-propre/routing.md).

# Routing

Utiliser les config YAML pour préfixer les espaces ( exemple : Front, Admin )

```yaml
front:
  resource: '../../src/Controller/Front'
  type: annotation
  prefix: '/'
  name_prefix: 'front.'

admin:
  resource: '../../src/Controller/Admin'
  type: annotation
  prefix: '/admin'
  name_prefix: 'admin.'

cgp:
  resource: '../../src/Controller/CGP'
  type: annotation
  prefix: '/cgp'
  name_prefix: 'cgp.'
```

### Controller

Pour rester dans la découpe des routes, il faudra préfixer votre controller au dessus de votre classe avant de les mettres dans au dessus de vos fonctions.

```php
namespace App\Controller\Admin;

...

#[Route('/marque-participation', name: 'brand_participation.')]
class BrandParticipationController extends AbstractController
{
    #[Route('/', name: 'index', methods: [Request::METHOD_GET])]
    public function index() {}
```

### Nommage

Vos noms de routes doivent être écrite comme suit :&#x20;

1. l'espace dans lequel vous êtes ( app, admin, front ... )
2. l'entité sur laquelle vous voulez effectuer l'action ( event, task ... )
3. Enfin, l'action voulu ( edit, new ... )

Le tout séparé par des points ( . ) et si vous vous rendez compte que vous avez par exemple une entité comme suit : carParticipation alors le nom sera séparer par des underscores ( \_ ) en **SNAKECASE**.

exemples :&#x20;

* app.car\_participation.edit
* cgp.car\_participation.edit\_visible
