57 votes

Fichier routes.php manquant dans le nouveau projet Laravel

J'ai téléchargé Composer, installé Laravel, et commencé mon premier projet Laravel pour commencer à apprendre Laravel en utilisant les leçons sur laracast (super leçons). La leçon deux couvre les routes. Mon nouveau projet n'a pas de fichier routes.php.

J'ai supprimé composer et recommencé. Même chose. J'ai essayé sur deux ordinateurs différents. Même chose. J'utilisais NetBeans alors j'ai essayé avec PHP Storm. Même chose. J'ai essayé de créer mon propre fichier routes.php mais ça ne semble pas fonctionner correctement car je ne connais rien de Laravel à ce stade. J'ai essayé de créer et sauvegarder le projet dans htdocs, et ensuite dans le dossier du projet PHPStorm, encore une fois - pas de fichier routes.php.

Composer est enregistré ici- C:\Users\myName\AppData\Roaming\Composer\vendor\bin. J'ai utilisé composer global require "laravel/installer" dans l'invite de commande pour installer Laravel. Des idées?

137voto

Geraldo Novais Points 1332

La dernière version de Laravel n'a pas de fichier routes.php.

Ce fichier 'routes.php' était situé dans \app\Http dans les anciennes versions.

Dans la nouvelle version, Laravel 5.3, nous avons un dossier nommé 'routes', où nous pouvons trouver les fichiers suivants :

  • api.php
  • console.php
  • web.php

Pour cette nouvelle version, les routes pour vos contrôleurs, vous pouvez les mettre à l'intérieur du fichier web.php

Voir la documentation sur le routage ici

https://laravel.com/docs/5.3/routing#basic-routing

La leçon vidéo que vous regardez peut être obsolète.

2 votes

Merci, C'est exactement ce que je cherchais.

1 votes

Merci. Cela m'a été utile, car je suivais un tutoriel.

0 votes

Pouvez-vous me dire quelle est la magie de routes/api.php en utilisant la classe Route sans utiliser l'espace de noms de la classe?

12voto

Akshay Khale Points 3658

Dans le dernier Laravel, ils ont supprimé le fichier routes.php commun, mais ils ont ajouté différents fichiers de routes pour mieux gérer les routes de votre application.

Il y a

  1. routes/web.php : fichier de routes qui fonctionne de manière similaire au fichier routes.php où vous pouvez avoir vos routes et toutes les routes POST dans le fichier web.php seront validées pour le jeton CSRF, similaire à la route Post Laravel normale.

  2. routes/api.php : fichier de routes où vous pouvez avoir les routes API de votre application, l'URL sera example.com/api/. Par exemple, si vous avez la route getUsers, alors l'URL de l'API sera example.com/api/getUsers. La chose la plus importante à noter est que les requêtes POST vers une URL API ne seront pas validées pour le jeton CSRF.

  3. routes/console.php : fichier de routes où vous pouvez définir vos commandes Artisan que vous pouvez exécuter depuis l'interface de ligne de commande Artisan de Laravel.

4voto

vishal pardeshi Points 174

Laravel nouvelle version n'a pas le fichier routes.php

Il a

1.web.php Pour créer des routes Web

2.api.php si vous utilisez un framework front (js), écrivez les routes ici

3.console.php le console.php est utilisé pour les commandes de console et l'interaction avec les commandes

2voto

Maniruzzaman Akash Points 1392

@Geraldo a bien répondu mais vous pouvez encore apprendre quelque chose de plus -

Dans la version plus récente de Laravel, les anciens types de fichiers routes.php ont été supprimés.

Pourquoi ont-ils été supprimés :

D'après l'annonce de Laravel, cela a été fait pour donner plus de flexibilité aux routes.

Solution :

Maintenant, un dossier de routes a été ajouté et à l'intérieur de ce dossier se trouvent 4 fichiers.

  1. web.php - Les anciennes routes étaient principalement dans ces fichiers. C'est ici que vous pouvez enregistrer les routes web pour votre application.
  2. api.php - C'est ici que vous pouvez enregistrer les routes API pour votre application.
  3. channels.php - Ici, vous pouvez enregistrer tous les canaux de diffusion d'événements que votre application prend en charge.
  4. console.php - Pour toutes les commandes console et l'interaction avec les commandes.

Voyez, maintenant c'est plus flexible pour vous d'ajouter n'importe quelle API et de la lier via son fichier de route api.php et la route normale dans le fichier web.php. Merci.

0voto

Mirza Sisic Points 1339

Dans la version 5.6, il n'y a pas de fichier routes.php sous Http/Requests, selon la documentation :

Toutes les routes Laravel sont définies dans vos fichiers de routes, qui se trouvent dans le répertoire routes. Ces fichiers sont automatiquement chargés par le framework. Le fichier routes/web.php définit les routes qui concernent votre interface web. Ces routes sont assignées au groupe de middleware web, qui fournit des fonctionnalités telles que l'état de session et la protection CSRF. Les routes dans le fichier routes/api.php sont stateless et sont assignées au groupe de middleware api.

Pour la plupart des applications, vous commencerez par définir des routes dans votre fichier routes/web.php. Les routes définies dans routes/web.php peuvent être accédées en entrant l'URL de la route définie dans votre navigateur. Par exemple, vous pouvez accéder à la route suivante en naviguant vers http://your-app.test/user dans votre navigateur :

Route::get('/user', 'UserController@index');

description de l'image

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X