Helper (Rails)

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Sujet Helpers Rails
Fichier app/helpers/application_helper.rb
Framework Rails
Voir aussi Mise en page (Rails)

Un helper Rails est du code réutilisable dans les vues, définissant un comportement donné (par exemple générer un titre de page).

Exemple : titre de page

# app/helpers/application_helper.rb
module ApplicationHelper

  # Retourne un titre basé sur la page
  def titre
    base_titre = "Simple App du Tutoriel Ruby on Rails"
    if @titre.nil?
      base_titre
    else
      "#{base_titre} | #{@titre}"
    end
  end
end

Dans la vue, on remplace :

<title>Simple App du Tutoriel Ruby on Rails | <%= @titre %></title>

par :

<title><%= titre %></title>

L'absence du @ signifie que l'on invoque le helper plutôt que la variable d'instance.

Helpers CSS

Des helpers intègrent automatiquement les feuilles de style. Dans app/views/layouts/application.html.erb, ajouter dans la balise head :

<%= stylesheet_link_tag 'blueprint/screen', :media => 'screen' %>
<%= stylesheet_link_tag 'blueprint/print',  :media => 'print' %>

Voir aussi