Laravel 5

La nouvelle version de Laravel

  • Laravel 5

    GraphQL et Laravel

    Je pratique la programmation depuis les années 80 et j’ai observé de nombreuses évolutions au fil des années. Actuellement on observe de rapides changements au niveau du frontend : système de design, multiples framewoks, systèmes de composants. Côté backend on s’oriente de plus en plus vers le cloud avec des solutions « élastiques » et malheureusement une hégémonie marquée d’Amazon. Dans cet article mon propos va concerner la communication entre client et serveur qui elle aussi connait des évolutions. De fait, l’API REST (Representational State Transfer) est un standard pour les requêtes HTTP pour faire communiquer un client avec un serveur. Par définition il n’y a pas d’état permanent (stateless). Une requête…

  • Laravel 5

    Un site d’annonces – l’interface utilisateur

    Notre site d’annonces est presque terminé. Il ne nous reste plus qu’à coder l’interface de l’utilisateur. Il doit pouvoir gérer ses annonces (voir celles qui sont en attentes, les actives, prolonger une annonce, la détruire). Il doit aussi avoie accès à ses données personnelles et éventuellement les changer. Pour vous simplifier la vie vous pouvez télécharger le dossier complet pour le code de cet article. C’est d’ailleurs l’état final de ce projet. Vous pouvez aussi récupérer la version pour Laravel 8 mise à disposition par Everyways (merci à lui !). Un middleware De la même manière qu’on a créé un middleware pour filtrer les administrateurs on va en créer un…

  • Laravel 5

    Un site d’annonces – l’administration (2/2)

    Dans cet article nous allons terminer la partie administration du site d’annonces. Il nous reste la gestion des annonces obsolètes et des messages à modérer. Pour vous simplifier la vie vous pouvez télécharger le dossier complet pour le code de cet article. Annonces obsolètes Les routes On doit ajouter des routes pour les annonces obsolètes : affichage des annonces obsolètes ajout d’une semaine à la date limite de publication pour prolonger l’annonce suppression définitive de l’annonce Route::prefix('admin')->middleware('admin')->group(function () { ... Route::prefix('annonces')->group(function () { Route::get('obsoletes', 'AdminController@obsoletes')->name('admin.obsoletes'); ... }); Route::prefix('admin/annonces')->group(function () { Route::middleware('ajax')->group(function () { Route::post('addweek/{ad}', 'AdminController@addWeek')->name('admin.addweek'); Route::delete('destroy/{ad}', 'AdminController@destroy')->name('admin.destroy'); }); }); On place les routes d’ajout et de suppression en dehors du…

  • Laravel 5

    Un site d’annonces – l’administration (1/2)

    Maintenant que la partie client est pratiquement terminée nous allons nous consacrer à l’administration du site. L’administrateur a pour tâche de modérer les annonces et certains messages, d’autre part il doit gérer les annonces obsolètes. Pour vous simplifier la vie vous pouvez télécharger le dossier complet pour le code de cet article. sb-admin-2 Pour ce projet j’ai opté pour sb-admin-2 comme template : Il est basé sur Bootstrap 4 qu’on utilise déjà et je le trouve plutôt esthétique. Vous pouvez télécharger les fichiers à partir du site. Ensuite vous copiez le contenu du dossier scss dans un dossier sb-admin-2 de notre projet : De la même manière on copie le…

  • Laravel 5

    Un site d’annonces – créer une annonce

    Dans cet article nous allons maintenant mettre en place l’intendance pour la création d’une annonce. La principale difficulté va résider dans la gestion des photos. Heureusement pour nous il existe Dropzone, une librairie Javascript qui facilite la mise en place d’un système de glisser-déposer des fichiers. Pour vous simplifier la vie vous pouvez télécharger le dossier complet pour le code de cet article. Dropzone et Intervention image Pour l’intégration de Dropzone dans Laravel je me suis largement inspiré de cet article et de celui-ci. On commence par charger Dropzone avec npm : npm i dropzone --save-dev Pour le fonctionnement de Dropzone il faut prévoir la librairie dans le CSS. Voici…

  • Laravel 5

    Un site d’annonces – annonce et message

    Dans cet article on va voir l’affichage des détails d’une annonce (titre, texte, photos…). On va aussi prévoir qu’un visiteur puisse envoyer un message à l’émetteur de l’annonce pour se mettre en relation avec lui. Pour vous simplifier la vie vous pouvez télécharger le dossier complet pour le code de cet article. La liste des annonces On en est restés avec la possibilité d’obtenir la liste des annonces pour une localisation (région, département, commune) et une catégorie : Mais je ne suis pas très satisfait de l’aspect actuel avce le lien en bleu et le soulignement au survol, j’aimerais quelque chose de plus esthétique. On va ajouter quelques règles dans…