Ce projet est un blog développé avec le framework Laravel et le framework JavaScript Vue.js. Il comprend un système d'authentification permettant aux utilisateurs de se connecter et de gérer leurs articles de blog. La base de données utilisée est PostgreSQL.
Avant de commencer, assurez-vous d'avoir les éléments suivants installés sur votre machine :
- PHP (version X.X.X)
- Composer (version X.X.X)
- Node.js (version X.X.X)
- PostgreSQL (version X.X.X)
-
Clonez ce dépôt de code sur votre machine :
git clone https://github.com/Bilaljanir/blog-php -
Accédez au répertoire du projet :
cd nom-du-projet -
Installez les dépendances PHP en utilisant Composer :
composer install -
Installez les dépendances JavaScript en utilisant npm :
npm install -
Copiez le fichier d'environnement .env.example et renommez-le en .env. Configurez les paramètres de la base de données PostgreSQL dans ce fichier.
-
Générez une clé d'application Laravel :
php artisan key:generate -
Exécutez les migrations pour créer les tables de la base de données :
php artisan migrate -
ancez le serveur de développement :
php artisan serve
Le projet suit une structure de répertoires Laravel standard. Voici une brève explication des principaux répertoires et fichiers :
-
app: Contient les classes principales de l'application Laravel, y compris les modèles, les contrôleurs et les politiques d'accès. Le modèleUserreprésente les utilisateurs du système, tandis que le modèleArticlereprésente les articles de blog. -
config: Contient les fichiers de configuration de l'application. Le fichierconfig/app.phppermet de configurer divers aspects de l'application, y compris les fournisseurs de services. -
database: Contient les fichiers de migration et les seeders pour la base de données. Les migrations sont utilisées pour créer les tables nécessaires pour le système d'authentification, les articles et les commentaires. -
resources: Contient les ressources JavaScript, CSS et les vues du projet Vue.js. Les fichiers JavaScript se trouvent dans le répertoireresources/js, les fichiers CSS dans le répertoireresources/csset les fichiers de vue dans le répertoireresources/views. -
routes: Contient les fichiers de définition des routes de l'application. Le fichierroutes/web.phpcontient les routes pour les pages de l'application, tandis que le fichierroutes/api.phpcontient les routes pour les API utilisées par Vue.js. -
tests: Contient les tests automatisés pour les différentes fonctionnalités de l'application. Les tests unitaires et les tests de fonctionnalités sont stockés respectivement dans les répertoirestests/Unitettests/Feature. -
public: Contient les fichiers accessibles publiquement tels que les images, les feuilles de style CSS et les scripts JavaScript. Le fichierpublic/index.phpest le point d'entrée de l'application Laravel.
composer require laravel/ui
php artisan ui bootstrap --auth
npm install && npm run dev
Les migrations sont comme un contrôle de version pour votre base de données, permettant à votre équipe de définir et de partager la définition du schéma de la base de données de l'application. Si vous avez déjà dû dire à un coéquipier d'ajouter manuellement une colonne au schéma de sa base de données locale après avoir intégré vos modifications depuis le contrôle de la source, vous avez été confronté au problème que les migrations de base de données permettent de résoudre.
EX:php artisan make:migration create_users_table
php artisan make:model NomDuModele
php artisan make:controller NomDuController
npm install pinia
Pour que les utilisateurs puissent augmenter la taille maximale des fichiers image téléchargés dans leur application Laravel, ils doivent configurer les paramètres appropriés dans le fichier php.ini. Voici les étapes à suivre :
-
Ouvrez un terminal.
-
Exécutez la commande suivante pour ouvrir le fichier php.ini avec un éditeur de texte :
sudo nano /etc/php/X.X/apache2/php.ini -
Recherchez les paramètres suivants dans le fichier php.ini et modifiez-les selon vos besoins
upload_max_filesize = 2M post_max_size = 8M