Laravel #6 - Enregistrer notre premier article

Edité le 12/08/2020

Pour enregistrer de la donnée dans une table, il nous faudra d'abord créer un model

 

Quelle est l'utilité d'un model ?

Le model va simplement servir à travailler avec votre table. Chaque table ou presque doit contenir un model !

 

Comment créer un model ?

Il suffit de lancer la commande

php artisan make:model nomDuModel


Astuce: Si nous reprenons l'exemple de notre table articles du précédent tutoriel, pour communiquer avec cette table il faut créer le model Article, soit le nom de la table au singulier.

 

Comprendre un model

On constate que le model extend de la classe Model

On constate également que pour le moment il est vide, même s'il est vide il nous sera possible de communiquer avec le table en utilisant ce model.

Astuce: on peut définir la variable table pour définir avec quel table le model doit communiquer. Par exemple protected $table = 'website_articles' si notre table s'appelle website_article 

 

Model + Migration

Il est possible de créer le model et la migration en même temps, imaginons que ma table article ne soit pas créer et que je veuille la créer, il me suffit de lancer php artisan make:model Article -m

Le -m indique que Laravel doit aussi créer le fichier de migration. Il va de lui même mettre le nom de la table au pluriel dans la migration.

 

Enregistrement de notre premier article

Pour le moment, nous allons enregistré un article avec des valeurs en dures. Pour ce, commencer par créer une route dans le fichier Routes/web.php

Route::get('/article/save', 'ArticlesController@create');


Ensuite, nous allons créer le controller en éxécutant la commande php artisan make:controller ArticlesController

Dans le controller, il est important d'importer notre model, pour cela il suffit d'utiliser use de composer

On constate qu'il y a déjà "use Illuminate\Http\Request;", en dessous nous allons ajouté :

use App\Article;


Enfin nous allons créer et enregistrer l'article. 

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Article;

class ArticlesController extends Controller
{
    public function create()
    {
        $article = new Article;
        $article->user_id = 1;
        $article->title = "Mon premier article"; 
        $article->content = "Bienvenue dans mon premier article";
        $article->save();
 
       return 'Article enregistré';
    }
}

 

On crée simplement une variable $article liée à notre model. Ensuite nous remplissons tout les champs correspondant par rapport aux colonnes de notre table. Enfin nous enregistrons notre model.

 

Voilà, le tour est joué !

Dans le prochain tutoriel nous allons avoir comment gérer des requêtes.

Cet article a été vu 267 fois
Laisser un commentaire:
Laissez le premier commentaire..
Laravel Débutant

Laravel est un framework web open-source écrit en PHP respectant le principe modèle-vue-contrôleur et entièrement développé en programmation orientée objet. Laravel est distribué sous licence MIT, avec ses sources hébergées sur GitHub. En peu de temps, une communauté d'utilisateurs du framework s'est constituée, et il est devenu en 2016 le projet PHP le mieux noté de GitHub. Laravel reste pourtant basé sur son grand frère Symfony, pour au moins 30 % de ses lignes (utilisation de "Symfony component").

# # #