Dans cette session, vous allez créer la première page du site.
Vous avez créé un nouveau controller dans app/controllers
qu'on a nommé pages_controller.rb
Un controller permet de communiquer via les pages que le serveur affiche à l'écran avec la base de données.
class PagesController < ApplicationController
def home
end
end
Décryptage:
- class PagesController < ApplicationController syntaxe création du controller Pages inclus dans le controller Application
- def home ... end syntaxe création d'une méthode/action pour notre controller, ici méthode vide, qucune action, l'idée c'est juste d'afficher du code HTML
Point technique:
Chaque action commence par def
(pour define), on définit une fonction et elle se termine par end
.
Vous allez créer le fichier html dans le dossier app/views/pages
qu'on a nommé home.html.erb (du nom de la méthode).
<h2>Bienvenue sur notre première page !!</h2>
(vous pouvez mettre ce que vous souhaitez en html)
On crée ici notre View qui sera visible à l'écran.
Allez dans config/routes.rb
, vous allez ajouter :
Rails.application.routes.draw do
root 'pages#home'
end
Décryptage:
root
signifie que ce sera accessible à la racine du site'pages#home'
ce sera la méthode home du controller pages qui sera accessible à la racine
On a donc créé un chemin d'accès qui permettra d'accéder à la méthode home (ici affichage d'une page statique en HTML)
Point technique: De façon générale, lorsque l'on crée une méthode ou fonction dans un controller, on doit créer la view du même nom (.html.erb) puis on ajoute cette méthode au fichier routes.rb pour avoir accès au chemin d'accès.
Pour aller plus loin: