Référence rapide

Aide-mémoire Contrôleurs Rails (Controllers)

Guide de référence pour les contrôleurs Rails : params, sessions, cookies, messages flash, filtres before_action et redirections.

· Publié le

Action Controller orchestre le MVC de Rails, traitant les requêtes HTTP, interrogeant les modèles et renvoyant les vues.

Paramètres de requête et tables spéciales

# Paramètres (chaîne de requête, corps et segments de route)
params[:id]
params.require(:user).permit(:name, :email)

# Stockage de session
session[:user_id] = user.id

# Notifications flash
flash[:notice] = "Welcome back!"     # Affiché lors de la prochaine requête
flash.now[:alert] = "Invalid password" # Affiché lors du rendu immédiat
flash.keep                            # Conserver les valeurs flash pour une requête supplémentaire

# Cookies
cookies[:theme] = "dark"
cookies.signed[:user_id] = user.id
cookies.permanent[:remember] = token

Callbacks (before_action)

class ArticlesController < ApplicationController
  before_action :authenticate_user!
  before_action :set_article, only: [:show, :edit, :update]
  skip_before_action :authenticate_user!, only: [:index, :show]

  private

  def set_article
    @article = Article.find(params[:id])
  end
end

Rendu et redirections

# Redirections
redirect_to root_path, notice: "Saved successfully!"
redirect_to article_path(@article)

# Rendu de gabarits et JSON
respond_to do |format|
  format.html # Renders articles/show.html.erb
  format.json { render json: @article }
  format.xml  { render xml: @article }
end

# Codes de statut
render :new, status: :unprocessable_entity
head :no_content

Références

Sujets associés