Outils pour utilisateurs

Outils du site


devweb:laravel:start (lu 5064 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
devweb:laravel:start [25-01-2014 15:01] edmc73devweb:laravel:start [12-11-2025 08:56] (Version actuelle) – laravel 12 edmc73
Ligne 1: Ligne 1:
 ====== Laravel ====== ====== Laravel ======
 +
 +===== Documentation =====
 +
 +  * https://laravel.com
 +
 +
 +===== Installation =====
 +
 +Installation de composer et npm nodejs
 +<code>
 +# en root
 +apt install zip unzip curl php-sqlite3 php-pgsql postgresql postgresql-postgis
 +php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
 +php composer-setup.php
 +rm composer-setup.php
 +mv composer.phar /usr/local/bin/composer
 +
 +## en user
 +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
 +nvm install 24
 +</code>
 +
 +Créer le projet
 +
 +  composer create-project laravel/laravel nom_du_projet
 +
 +Installer livewire
 +  composer require livewire/livewire
 +
 +Installer breeze 
 +  composer require laravel/breeze --dev
 +  php artisan breeze:install livewire
 +
 +
 +
 +===== Problème du début =====
 +
  
  
 ===== Convention de nommage ===== ===== Convention de nommage =====
 +Laravel Schema Designer => http://www.laravelsd.com/ permet de créer des bases de données avec la souris puis de télécharger les fichiers de model, view et schema.
 +
 <note important>ATTENTION au pluriel et singulier !!!</note> <note important>ATTENTION au pluriel et singulier !!!</note>
  
Ligne 20: Ligne 59:
 Champ: id, article_id, user_id, contenu...</code> Champ: id, article_id, user_id, contenu...</code>
  
 +Si on veut faire une table pivot, on nomme la table par ordre alphabétique du nom au singulier des deux tables concernées et elle doit contenir les 2 clés étrangères correspondantes
 +<code>Table: article_commentaire
 +Champ: article_id, commentaire_id</code>
 +
 +
 +D'autres explications et schéma par là => http://laravel.sl-creation.org/laravel-4-chapitre-33-les-relations-avec-eloquent-1/
  
 ===== Models et relation ===== ===== Models et relation =====
Ligne 71: Ligne 116:
 } }
 </code> </code>
 +
 +===== Ajouter ses class ou fonctions =====
 +
 +Créez un fichier **helpers.php** dans par exemple **app/** puis ajoutez-le dans le **app/Providers/AppServiceProvider.php**
 +
 +
 +<code php>
 +<?php
 +
 +namespace App\Providers;
 +
 +use Illuminate\Support\ServiceProvider;
 +
 +class AppServiceProvider extends ServiceProvider
 +{
 +    /**
 +     * Bootstrap any application services.
 +     *
 +     * @return void
 +     */
 +    public function boot()
 +    {
 +        require_once(app_path().'/helpers.php');
 +    }
 +
 +    /**
 +     * Register any application services.
 +     *
 +     * @return void
 +     */
 +    public function register()
 +    {
 +        //
 +    }
 +}
 +
 +
 +</code>
 +
 +
 +
 +
 +Pour ajouter un répertoire contenant des fichiers de class, Créez par exemple un dossier **app\MyClass** et posez votre fichier de class suivant la norme psr-4
 +
 +exemple : 
 +  vi app/MyClass/MaClass.php
 +
 +<code php>
 +<?php
 +
 +// important !
 +namespace App\MyClass;
 +
 +// le nom de la class doit être le même que le nom du fichier
 +class MaClass
 +{
 +
 +}
 +
 +/*
 +Pour utiliser cette class dans un autre fichier, ajoutez
 +use App\MyClass\MaClass;
 +*/
 +</code>
 +===== Mettre en français strftime =====
 +
 +Ajoutez dans la fonction boot **app/Providers/AppServiceProvider.php**
 +  setlocale(LC_ALL, 'fr_FR.UTF-8');
 +
 +Même remarque pour mettre Carbon en français
 +  Carbon::setLocale(config('app.locale'));
 +
 +La config app.locale doit être à **fr**
 +===== Intégrer le framework en dehors de public =====
 +
 +<code php>
 +// Intégration du framework
 +require __DIR__.'/bootstrap/autoload.php';
 +$app = require_once __DIR__.'/bootstrap/start.php';
 +</code>
 +
 +  
devweb/laravel/start.1390662088.txt.gz · Dernière modification : de edmc73