Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| devweb:laravel:start [25-01-2014 15:00] – créée edmc73 | devweb:laravel:start [12-11-2025 08:56] (Version actuelle) – laravel 12 edmc73 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Laravel ====== | ====== Laravel ====== | ||
| + | |||
| + | ===== Documentation ===== | ||
| + | |||
| + | * https:// | ||
| + | |||
| + | |||
| + | ===== Installation ===== | ||
| + | |||
| + | Installation de composer et npm nodejs | ||
| + | < | ||
| + | # en root | ||
| + | apt install zip unzip curl php-sqlite3 php-pgsql postgresql postgresql-postgis | ||
| + | php -r " | ||
| + | php composer-setup.php | ||
| + | rm composer-setup.php | ||
| + | mv composer.phar / | ||
| + | |||
| + | ## en user | ||
| + | curl -o- https:// | ||
| + | nvm install 24 | ||
| + | </ | ||
| + | |||
| + | Créer le projet | ||
| + | |||
| + | composer create-project laravel/ | ||
| + | |||
| + | Installer livewire | ||
| + | composer require livewire/ | ||
| + | |||
| + | Installer breeze | ||
| + | composer require laravel/ | ||
| + | php artisan breeze: | ||
| + | |||
| + | |||
| + | |||
| + | ===== Problème du début ===== | ||
| + | |||
| ===== Convention de nommage ===== | ===== Convention de nommage ===== | ||
| + | Laravel Schema Designer => http:// | ||
| + | |||
| + | <note important> | ||
| Pour que tout se passe bien, nommé vos tables au pluriel, vos modèles au singulier, votre id doit s' | Pour que tout se passe bien, nommé vos tables au pluriel, vos modèles au singulier, votre id doit s' | ||
| Ligne 19: | Ligne 59: | ||
| Champ: id, article_id, user_id, contenu...</ | Champ: id, article_id, user_id, contenu...</ | ||
| + | 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 | ||
| + | < | ||
| + | Champ: article_id, commentaire_id</ | ||
| + | |||
| + | |||
| + | D' | ||
| ===== Models et relation ===== | ===== Models et relation ===== | ||
| Ligne 70: | Ligne 116: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | ===== Ajouter ses class ou fonctions ===== | ||
| + | |||
| + | Créez un fichier **helpers.php** dans par exemple **app/** puis ajoutez-le dans le **app/ | ||
| + | |||
| + | |||
| + | <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().'/ | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * Register any application services. | ||
| + | * | ||
| + | * @return void | ||
| + | */ | ||
| + | public function register() | ||
| + | { | ||
| + | // | ||
| + | } | ||
| + | } | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | 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/ | ||
| + | |||
| + | <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; | ||
| + | */ | ||
| + | </ | ||
| + | ===== Mettre en français strftime ===== | ||
| + | |||
| + | Ajoutez dans la fonction boot **app/ | ||
| + | setlocale(LC_ALL, | ||
| + | |||
| + | Même remarque pour mettre Carbon en français | ||
| + | Carbon:: | ||
| + | |||
| + | La config app.locale doit être à **fr** | ||
| + | ===== Intégrer le framework en dehors de public ===== | ||
| + | |||
| + | <code php> | ||
| + | // Intégration du framework | ||
| + | require __DIR__.'/ | ||
| + | $app = require_once __DIR__.'/ | ||
| + | </ | ||
| + | |||
| + | | ||