Ruby on Rails, ou Rails, est un framework de développement web open-source écrit en Ruby, conçu pour faciliter la création d’applications web robustes et dynamiques. Rails a été conçu avec un principe fondamental : la convention sur la configuration, ce qui signifie que les développeurs n’ont pas à se soucier des configurations complexes. Grâce à sa facilité d’utilisation et à ses fonctionnalités puissantes, Rails est devenu l’un des frameworks les plus populaires pour créer des applications web modernes.
Dans cet article, nous allons explorer les bases de Ruby on Rails, y compris son architecture, les principales fonctionnalités, et comment commencer à développer avec ce framework.
1. Qu’est-ce que Ruby on Rails ?
Ruby on Rails est un framework de développement web complet qui suit le modèle de conception MVC (Modèle-Vue-Contrôleur). Ce modèle sépare une application en trois parties distinctes :
- Modèle : Gère les données de l’application, généralement en interaction avec une base de données.
- Vue : Gère l’affichage des données sous forme de pages HTML ou autres formats (JSON, XML, etc.).
- Contrôleur : Agit comme un intermédiaire entre le modèle et la vue, en manipulant les données et en les envoyant à la vue.
Rails est conçu pour être simple et productif, en mettant l’accent sur des conventions pour accélérer le développement et réduire le besoin de configuration manuelle.
2. Installation de Ruby on Rails
Avant de commencer à utiliser Ruby on Rails, vous devez d’abord installer Ruby et Rails sur votre machine. Voici les étapes d’installation de base :
Installer Ruby
- Téléchargez Ruby à partir du site officiel ruby-lang.org.
- Si vous êtes sur macOS ou Linux, vous pouvez utiliser un gestionnaire de versions comme
rbenvourvmpour installer Ruby.
bashCopierModifier# Installer rbenv (gestionnaire de versions Ruby)
brew install rbenv
rbenv install 3.1.0 # Installer Ruby 3.1.0
rbenv global 3.1.0 # Définir Ruby 3.1.0 comme version globale
Installer Rails
Une fois Ruby installé, vous pouvez installer Rails avec la commande suivante :
bashCopierModifiergem install rails
Cela installera la dernière version stable de Ruby on Rails.
3. Création d’un Projet Rails
Une fois Rails installé, vous pouvez créer votre première application Rails avec la commande suivante :
bashCopierModifierrails new mon_application
Cette commande crée une structure de répertoires par défaut pour votre application, avec tous les fichiers et dossiers nécessaires. Vous pouvez ensuite entrer dans le répertoire de votre application avec :
bashCopierModifiercd mon_application
4. Structure d’un Projet Rails
Un projet Rails suit une structure bien définie, ce qui facilite la navigation et la gestion du code. Voici un aperçu des répertoires clés :
- app/ : Contient tout le code de votre application. Ce répertoire est divisé en sous-répertoires pour le modèle (models), la vue (views), et le contrôleur (controllers).
- config/ : Contient les fichiers de configuration de votre application, tels que la configuration de la base de données et des routes.
- db/ : Contient les fichiers de migration de la base de données.
- public/ : Contient les fichiers accessibles publiquement, comme les images et les fichiers JavaScript.
- test/ : Contient les fichiers de test de votre application.
5. Les Routes dans Rails
Les routes définissent comment les requêtes HTTP sont dirigées vers des actions spécifiques dans vos contrôleurs. Par défaut, Rails crée un fichier config/routes.rb où vous pouvez configurer vos routes.
Exemple de configuration de route :
rubyCopierModifierRails.application.routes.draw do
root 'pages#home' # Page d'accueil
get 'about', to: 'pages#about' # Route vers la page "about"
end
Dans cet exemple, la route racine de l’application est définie comme la méthode home du contrôleur pages.
6. Les Contrôleurs et Actions
Les contrôleurs dans Rails sont responsables de la logique de traitement des requêtes. Ils reçoivent des requêtes HTTP et retournent des réponses en utilisant des vues ou des redirections.
Exemple de contrôleur :
rubyCopierModifierclass PagesController < ApplicationController
def home
# Logique de la page d'accueil
end
def about
# Logique de la page "about"
end
end
Dans cet exemple, le contrôleur PagesController contient deux actions : home et about, qui correspondent aux routes définies précédemment.
7. Les Vues
Les vues dans Rails sont responsables de l’affichage des données. Elles sont généralement écrites en HTML avec des balises Ruby, appelées « ERB » (Embedded Ruby), qui permettent d’insérer du code Ruby directement dans les fichiers HTML.
Exemple de vue home.html.erb :
erbCopierModifier<h1>Bienvenue sur la page d'accueil!</h1>
<p>Ceci est la page d'accueil de votre application Rails.</p>
Les fichiers .erb sont rendus dynamiquement par le contrôleur et envoyés au client sous forme de HTML.
8. Les Modèles et la Base de Données
Les modèles représentent les données de votre application et sont utilisés pour interagir avec la base de données. Rails utilise ActiveRecord, un ORM (Object-Relational Mapping), pour simplifier cette interaction.
Exemple de modèle Article :
rubyCopierModifierclass Article < ApplicationRecord
validates :title, presence: true
validates :content, presence: true
end
Rails génère automatiquement des tables de base de données en fonction de vos modèles. Vous pouvez créer une table pour le modèle Article avec une migration :
bashCopierModifierrails generate model Article title:string content:text
rails db:migrate
Cette commande génère une migration pour créer la table articles avec des colonnes title et content.
9. Les Migrations
Les migrations sont utilisées pour gérer les modifications du schéma de la base de données, comme la création ou la modification de tables.
Exemple de migration :
rubyCopierModifierclass AddPublishedAtToArticles < ActiveRecord::Migration[6.0]
def change
add_column :articles, :published_at, :datetime
end
end
Les migrations sont appliquées à la base de données avec la commande :
bashCopierModifierrails db:migrate
10. Démarrer le Serveur
Une fois que vous avez créé votre application, vous pouvez la démarrer en utilisant le serveur intégré de Rails :
bashCopierModifierrails server
Cela démarre le serveur sur http://localhost:3000. Vous pouvez maintenant visiter cette adresse dans votre navigateur pour voir votre application en action.
Conclusion
Ruby on Rails est un framework puissant et facile à utiliser pour développer des applications web. En suivant ces bases, vous pouvez rapidement démarrer avec Rails et créer des applications dynamiques et robustes. Rails met l’accent sur les bonnes pratiques et la productivité, ce qui permet aux développeurs de se concentrer sur la logique de l’application plutôt que sur des détails de configuration.
N’hésitez pas à explorer la documentation officielle de Rails pour approfondir vos connaissances et découvrir des fonctionnalités plus avancées.

















