Rails vite fait : gestion de thèmes
By jul on Thursday, January 18 2007, 19:15 - Permalink
On imagine un système simple de gestion de thèmes dans lequel on passe le nom du thème dans une variable de session.
Tout d'abord on créé un répertoire de thèmes à la racine de son application :
mkdir /repertoire/du/site/rails/themes
Pour chaque thème, on a un sous-répertoire dans themes. Par exemple un thème standard :
mkdir /repertoire/du/site/rails/themes/standard
Enfin pour notre thème on a un layout : standard/layout.rhtml Dans notre contrôleur, on définit une méthode de thème :
def theme_layout "../../themes/"+@session[:theme]+"/layout" end
A présent on peut utiliser le thème par render :
render :use_full_path=>true, :layout=>:theme_layout
ou alors dans tout le contrôleur :
class MonController < ApplicationController layout :theme_layout end
On peut définir quel thème utiliser n'importe où avec la variable de session :
@session[:theme]="standard"
Comments
This post's comments feed