J'apprends Rails et j'ai vu ces moteurs de templates. Je n'ai aucune expérience avec eux (seulement erb).
Mais comme je suis débutant, je suis vraiment confus. Lequel suggérez-vous et pourquoi? Erb, Haml ou Slim? S'il vous plaît dites votre raison de préférer un sur les autres. Et si vous avez d'autres recommandations, veuillez nous en informer.
EDIT: Je ne cherche pas un gagnant ici. Je veux juste connaître votre opinion à leur sujet, leur syntaxe, leur rapidité d'exécution, etc.
ERB est utile surtout si vous avez un concepteur de sites Web qui travaillera en HTML simple et ne connaît ni haml ni slim. De cette façon, il peut écrire du HTML et vous pouvez intégrer la logique Ruby avec les balises appropriées.
Si vous travaillez à la fois sur HTML et sur la logique Ruby, ou si votre concepteur est prêt à apprendre quelque chose de nouveau (comme HAML), je choisirais HAML. Il est beaucoup plus convivial avec Ruby, réduit le nombre de caractères de manière beaucoup plus lisible que ERB.
Par exemple (tiré du site officiel site HAML ):
Dans ERB, votre vue ressemblera à ceci:
<div id="profile">
<div class="left column">
<div id="date"><%= print_date %></div>
<div id="address"><%= current_user.address %></div>
</div>
<div class="right column">
<div id="email"><%= current_user.email %></div>
<div id="bio"><%= current_user.bio %></div>
</div>
</div>
En HAML, cela ressemblera à ceci:
#profile
.left.column
#date= print_date
#address= current_user.address
.right.column
#email= current_user.email
#bio= current_user.bio
Beaucoup plus propre!
En ce qui concerne la différence entre HAML et SLIM - je n’ai jamais vraiment travaillé avec SLIM, mais j’imagine que c’est une question de goût - examinez les deux syntaxes et choisissez celle qui vous va le mieux. Je ne pense pas qu'il y ait un vainqueur défini entre ces deux (HAML/SLIM).
Deux gros avantages de l'utilisation de slim over haml:
Slim est actuellement environ huit fois plus rapide que haml.
Slim prend en charge le streaming HTTP, contrairement à HAML.
Slim a une syntaxe plus naturelle: a href="foo.html"
C’est ce que j’ai trouvé par cœur
ERB :
Pros
Inconvénients
HAML
Pros
Inconvénients
La question que je me pose est de savoir si vous préférez mettre %
avant chaque tag ou |
avant chaque nouveau bloc de texte?
Svelte:
tag(attr= "value")
| text
Haml:
%tag{attr: "value"}
text
Une dernière chose à surveiller: haml suppose qu'il y a un espace blanc entre les nouvelles lignes ( enlever les espaces blancs dans haml ) tandis que slim ne prend aucun espace (Ajouter des espaces blancs dans Slim ici et ici )
https://github.com/scalp42/hamlerbslim - est une référence indépendante qui présente Slim et Erb comme gagnants, en termes de performances (slim tend également à réduire la taille de la sortie HTML.)
Mon opinion personnelle est que, dans l’ensemble, Slim et Haml vous feront économiser du temps (== argent) en termes de maintenance, à condition que vous disposiez de personnes averties en Haml/Slim pour s’occuper de votre point de vue.
Si vous n’avez pas ces personnes, Erb est définitivement la voie à suivre car, malgré la meilleure volonté du monde, de nombreuses personnes très peu chères sont disponibles pour travailler avec HTML/Erb, mais trouvez Haml/Slim complet. mystère.
Le meilleur de tous les cas, formez ces personnes à utiliser Slim ou au moins exposez-les à celles-ci, et conservez le nombre de celles qui "l'obtiennent".