Journal du Net > Développeurs > Contributions > Soumettez votre meilleure astuce Ruby on Rails

APPEL
A CONTRIBUTION

Vous faites appel à cet environnement orienté objets pour développer vos sites Web et autres applications. Vous avez certainement une astuce à partager !

Participez

 Haml, pour des templates Rails encore plus simples et propres  

Raphaël Emourgeon

Quel est en quelques lignes l'objectif de votre astuce ?

Si vous travaillez avec Rails depuis quelques temps vous aurez rapidement remarqué que les vues deviennent vite très peu lisibles, malgré l'utilisation de helper. En effet, le mélange de Ruby avec du html donne des blocs pas toujours très facile à déchiffrer, surtout sur des pages assez complexes...

C'est là que Haml (http://haml.hamptoncatlin.com/) entre en jeu en proposant d'écrire des templates avec une syntaxe beaucoup plus agréable. Trêve d'explications : exemple !


Décrivez votre astuce en détails. N'hésitez-pas à inclure des portions de codes.

RHTML :

<div id="main">
  <div class="left">
    <div id="utilisateur"></div>
  </div>
</div>

Haml :

#main
  .left
    #utilisateur= current_user.login

Je crois que cet exemple parle de lui même, le code est plus précis, plus concis et surtout plus lisible. Autre exemple, le cas d’une liste à puce en Haml :

%ul
  %li Ruby
  %li PHP
  %li Java

Et enfin le meilleur pour la fin, le cas d’un tableau de contact en Haml :

%table= render(@contacts)

et le partial correspondant :

%tr[contact]
  %td= contact.prenom
  %td= contact.nom

Vous noterez la syntaxe %tr[contact] qui va donner en html : tr id= »contact_(id_du_contact) ». Convaincu ?

L'installation de Haml est décrite sur cette page (http://haml.hamptoncatlin.com/) et est très simple, il s'agit d'installer un gem et un petit plugin qui fait le lien entre
le gem et votre application Rails...

Une fois Haml mis en place, je vous conseille vivement de parcourir le
tutorial d'introduction et de convertir manuellement quelques une de
vos vues (rien ne vous oblige à utiliser Haml dans toutes les vues, rhtml est toujours utilisable). Personnellement je n'ai pas utilisé le
convertisseur rhtml ->Haml donc je ne sais pas si le résultat est
bon...

Ce contenu a été réalisé par le blog accoladech : http://www.accolade.ch (Raphaël Emourgeon) sous licence Creative Commons.


Publié le 04 novembre 2009

Soyez le premier ou la première à réagir à ce temoignage : réagir
2 contributions : 1 2
 




 

RECHERCHE