7
votes

Qu'est-ce que -%> signifie dans Ruby sur rails, contre%>

J'ai toujours utilisé <% = quelque_code%> pour insérer RUBY dans HTML lors de l'utilisation de Ruby sur des rails. Je viens de remarquer que d'autres projets utilisent parfois <% = certains_code-%> .


2 commentaires

Question Superset pour tous les formats <%%> Modificateurs qui sont venus plus tard: Stackoverflow.com/questions / 7996695 / Rails-Erb-Syntaxe


@Cirosantilli: Vous dominez-les - Beau travail! J'ai choisi Stackoverflow.com/questions/7996695/... pour celui-ci, aussi ...


3 Réponses :


13
votes

<% = Quelqu'un_code -%> Le moins à la fin supprime la nouvelle ligne. Utile pour formater le code HTML généré, tandis que <% = Quelqu'un_code%> n'est pas.

Merci, Anubhaw


2 commentaires

Qu'en est-il de la différence entre commencer par <% = vs <% ?


@ShawnSep = ajuste la sortie, % ne fonctionne pas et est utilisé pour des trucs comme des conditionnels <% si%> .



4
votes

Il est supprimé sur les rails 3.

Maintenant avec des rails 3, il n'y a pas de différence entre cette 2 formes.


3 commentaires

Je ne sais pas où vous lisez cela, mais -%> arrête toujours l'ERB de produire une nouvelle ligne de fin dans les rails 3.


Selon les rails 3 Notes de version: "Vous n'avez plus besoin de placer un signe moins à la fin d'une interpolation rubis à l'intérieur d'un modèle ERB pour supprimer le retour de chariot de fuite dans la sortie HTML."


@Tim Cela signifie qu'il supprimera la trailing CR de votre sortie HTML, pas de toutes les lignes. -%> existe toujours et est toujours utile.



1
votes

Cette réponse était fausse: voir https://stackoverflow.com/a/25617607/895245 à la place.


dans Ruby 2.1 (pas nécessairement avec des rails), le - code> supprime une nouvelle ligne indiquée par anubhaw: p>


0 commentaires