Stockons les données

Retrouvez les slides:

LA BASE DE DONNÉES

BASE DE DONNÉES, KESACO ?

Une base de données est un outil permettant de stocker et de retrouver l'intégralité de données brutes ou d'informations en rapport avec un thème. La base de données est au centre des dispositifs informatiques de collecte, mise en forme, stockage, et utilisation d'informations.

EXEMPLE D'UNE

REQUÊTE SQL

4. Le serveur se connecte à la base de données

5. La base de données retrouve l'utilisateur grâce à son email

6. La co

1

2

3

4

Navigateur

Serveur

SQL

COMPOSITION D'UNE BDD

Id title content cover_image author_id
1 Comprendre la base de données Super contenu pour comprendre ce que c'est qu'une base de données ​https://s-media-cache-ak0.pinimg.com/... 3
4 Le modèle, c'est super bien C'est hyper pratique un modèle, ça rend bien service https://www.fifthsun.com/... 1

{

Table
Articles

Champs

Automatique

Une base de données, c'est comme des milliers de feuilles excel dans lesquelles on va stocker, éditer, rechercher la donnée que l'utilisateur crée, modifie et demande

Mais comment faire le lien entre la base de données (outil externe manipulé avec du sql) et notre application Rails ?

LE MODÈLE

(== M de MVC !)

class Car
  def initialize(model, color)
    @model = model
    @color = color
  end

  def start
    puts "The #{@color} #{@model} starts"
  end

  def stop
    puts "The #{@color} #{@model} stops"
  end
end

==

Crée des voitures identiques

à partir d'un seul et même modèle

LE MODÈLE

C'est le M dans MVC :)

C'est là où on va définir toutes les caractéristiques de notre objet:

  • le nom de la table correspondante dans la BDD
  • les champs qui le composent,
  • les liens avec les autres modèles,
  • les validations avant l'enregistrement dans la BDD,
  • toutes autres méthodes spécifiques au modèle.

LIEN ENTRE MODÈLE ET BASE DE DONNÉES

RAILS BASE DE DONNÉES
Modèle (singulier) Table (pluriel)
Instances du modèle Lignes de la base de données
Attributs de l'instance Colonnes de la base de données

Gère les mouvements entre l'object, ses instances et la base de données (sauvegarde, édition, destruction)

Qu'est-ce que l'ORM fait ?

Comment se fait le lien entre notre application et la base de données ?

ACCÉDER ET
MANIPULER
LES DONNÉES

MANIPULER LA

BASE DE DONNÉES

rake db:create

Créer une base de données :

rake db:drop

Supprimer une base de données :

Voir le fichier de la bdd :

db/schema.rb
rake db:migrate

Enregistrer un modèle, une modification dans la bdd :

rake db:rollback

Revenir en arrière (effacer la dernière migration par exemple :

GENERER UN MODELE EN UNE LIGNE
DANS LE TERMINAL

rails generate model Article name:string content:text

Nom du modèle

Nom du champ

Type du champ

LES MIGRATIONS

= liens entre rails et le schéma de la base de données

1 ligne dans le terminal

rails generate model Article name:string content:text

qui génère un fichier dans db/migrate

Quand on lance

rake db:migrate

Ça modifie le schema.rb

AFFICHER LES INSTANCES DE L'OBJET

Afficher toutes les instances :

Afficher une seule instance (id) :

Afficher une seule instance (champ) :

Article.all
Article.find(5)
Article.find_by(name: 'Comprendre la base de données')

CRÉER/

MODIFIER/SUPPRIMER

Créer une instance

Modifier l'instance

Supprimer l'instance

Article.create(name: 'Modèle, les doigts dans le nez')
Article.find(1).update(name: 'Modèle et base de données')
Article.find(1).destroy

Et maintenant...

retrouvez l'exercice d'aujourd'hui ici !

Week 4 - Stockons nos données

By women_on_rails

Week 4 - Stockons nos données

  • 654