Laravel 5

Cours Laravel 5.3 – plus loin – une application d’exemple

Pour cette partie du cours nous allons utiliser une application d’exemple. Elle va nous donner l’occasion de développer ce que nous avons déjà vu et d’aborder d’autres points importants. Elle va éviter de trop charger ce cours de lignes de code.

La première chose que vous avez à faire est donc d’installer cette application sur un serveur local et de regarder comment elle fonctionne.

Installation

L’installation est détaillée sur la page Github du dépôt. Je vais toutefois apporter quelques commentaires parce que la procédure est tout de même assez concise :

git clone https://github.com/bestmomo/laravel5-3-example.git projectname

Ici on vous demande de cloner le dépôt sur votre machine dans le dossier projectname. Vous pouvez évidemment changer le nom du dossier à votre convenance.

Si vous ne disposez pas de git sur votre machine vous avez le choix : soit l’installer, soit utiliser une autre méthode.

Comme autre possibilité vous pouvez télécharger le fichier compressé (zip) :

Il ne vous reste plus alors qu’à le décompresser dans votre dossier de projet.

cd projectname

En partant du principe que vous avez effectué la commande git vous vous trouvez dans le dossier parent de votre projet.

La commande cd (Change Directory) a pour seul but de changer de dossier dans la console.

Si vous avez téléchargé le fichier compressé vous devez naviguer dans la console jusqu’à votre dossier.

composer install

C’est la commande de Composer que nous avons déjà vue qui permet d’installer toutes les dépendances et générer les fichiers pour le chargement automatique des classes (autoload) :

Composer est assez malin pour garder les librairie en cache pour éviter de les recharger.

composer update

Lors de l’installation il se peut que certains composants ne soient pas installés dans leur dernière version, alors on lance une mise à jour pour arranger ça éventuellement.

copy .env.example to .env

On a déjà vu qu’il faut créer un fichier .env à partir du fichier .env.example de l’installation de base :

php artisan key:generate

Il y a déjà une clé présente dans le fichier .env mais par sécurité on demande de la régénérer.

Pour mémoire c’est cette clé qui assure la sécurité de l’encryptage.

if you use MySQL in .env file

Comme on ne va pas utiliser sqlite on va créer une base MySQL et renseigner les variables, par exemple :

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=projectname
DB_USERNAME=root
DB_PASSWORD=

php artisan migrate –seed to create and populate tables

Là on crée les tables et on les remplit :

edit .env for emails configuration

Pour l’envoi des courriels vous devez renseigner les variables dans le fichier .env, par défaut on a mailtrap dont je vous ai déjà parlé dans ce cours :

MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

optionaly npm install to manage assets

Si vous voulez apporter des modifications au CSS du site alors installez les dépendances de gulp comme on l’a vu dans le chapitre correspondant de ce cours.

Aspect du site

Après tout ça vous devriez aboutir sur la page d’accueil :

Si ce n’est pas le cas vous n’avez plus qu’à reprendre depuis le début en trouvant où vous vous êtes trompé.

Le formulaire de contact‌

Le site dispose d’un formulaire de contact :

Le blog

Il y a aussi un blog avec un zone de saisie pour la recherche textuelle :

Pour chaque article du blog on a des tags et des commentaires :

Les langues

L’interface est en 3 langues :

La connexion

Il y a un formulaire de connexion :

Il y a de la même manière un formulaire pour l’enregistrement et un autre pour le renouvellement du mot de passe.

On a 3 types d’utilisateurs :

  • les administrateurs (admin) qui ont tous les droits,
  • les rédacteurs (redac) qui peuvent rédiger et modifier des messages
  • les utilisateurs (user) de base qui peuvent écrire des commentaires.

L’administration

Pour se connecter en tant qu’administrateur il faut entrer :

  • login : admin@la.fr
  • mot de passe : admin

La barre de menu se modifie :

En cliquant sur ADMINISTRATION on arrive sur la page de l’administration :

Ici on peut gérer :

  • les utilisateurs,
  • les rôles,
  • les messages,
  • les commentaires,
  • les médias,
  • les articles.

Pour se connecter en tant que rédacteur il faut entrer :

  • login : redac@la.fr
  • mot de passe : redac

La barre de menu se modifie :

En cliquant sur REDACTION on arrive sur la page de la rédaction :

Ici on peut gérer seulement les articles et les médias.

Il serait trop laborieux de décrire toutes les fonctionnalités ici. Nous en verrons peu à peu dans cette partie du cours.

En résumé

  • L’application d’exemple présente un site complet et fonctionnel.
  • L’application d’exemple va nous permettre d’étudier de nouvelles fonctionnalités de Laravel tout en les voyant en action dans une application‌.
Print Friendly, PDF & Email

4 commentaires

  • phildid

    Rebonsoir,

    je ne savais pas non plus que vous aviez fait les 2 cours Laravel sur Openclassroom du coup j’y suis revenu.

    Pouvez vous me dire ce qui se passe avec le file manager dans la doc du fichier Github il y a la commande
    php artisan vendor:publish` to publish filemanager que j’ai lancée
    $ php artisan vendor:publish
    Copied Directory [\vendor\bestmomo\filemanager\public] To [\public]
    Copied Directory [\vendor\bestmomo\filemanager\config] To [\config]
    Publishing complete for tag []!

    mais tjrs rien

    Cordialement PhilDid

    • bestmomo

      Salut,

      Les cours sur Openclassroom sont devenus obsolètes, il vaut mieux se référer à mon blog que je garde à jour.

      Pour l’exemple Laravel 5.3 j’avais créé un package avec un filemanager qui malheureusement n’a pas été mis ensuite à jour et donc il est fort possible qu’il ne fonctionne plus. Il vaut mieux regarder mon exemple Laravel 5.5.

      Cordialement
      Maurice

  • phildid

    Bonjour Maurice,

    Je commence à naviguer sur votre site et je retrouve avec plaisir cette appli sur laquelle j’avais déjà travaillé (captée sur un forum). Je retrouve là vos couleurs et votre façon de développer, claire et concise.Ce projet est très intéressant car on a non seulement un blog fonctionnel avec commentaires mais en plus une admin et la gestion des rôles + le multi langue.Tout fonctionne correctement.
    Le seul soucis que j’ai rencontré (en local) c’est la gestion des images certainement due au protocole ftp qui ne fonctionne pas en local. c’est peut être du au fait que je n’utilise pas l’hôte virtuel avec laragon. (les images du blog sont dans la base elles me sont apparue une fois !).

    Pouvez-vous m’en dire plus là dessus .et aussi à propos du file manger (Given config file
    (filemanager.config.js) does not exist !). Sinon c’est une belle appli blog avec tout ce qui faut et en plus un éditeur wysing au poil.

Laisser un commentaire