Frage

Manchmal ist es bequemer zu drucken <%%>.Wie zu tun, es in Rails?

War es hilfreich?

Lösung

http://api.rubyonrails.org/ Klassen / ActionView / Helpers / TextHelper.html # Methode-i-concat

Sollte das sein, was Sie suchen.

z. die folgende Anweisung concat:

<% concat "Output" %>

entspricht:

<%= "Output" %>

Andere Tipps

In ERB: Die <%%> signify, dass es hier Ruby-Code interpretiert werden. Die <% =%> sagt Ausgang des Ruby-Code, dh Anzeige / drucken Sie das Ergebnis.

So scheint es, Sie müssen das Extra = Zeichen verwenden, wenn Sie in einer Standard-ERB-Datei ausgegeben werden sollen.

Ansonsten Sie Alternativen zu ERB aussehen könnten, die weniger Syntax benötigen, versuchen .. vielleicht so etwas wie HAML. http://haml-lang.com/tutorial.html

Example:

# ERB
<strong><%= item.title %></strong>

# HAML
%strong= item.title

Ist die bequem?

erb zwei Methode zur Bewertung inline-ruby-Ausdrücke.Die <% das wertet den Ausdruck aus und die <%= die Auswertung und Drucke.Es gibt kein globales Objekt zu drucken, um in den verbindlichen Rahmen.

Wie bereits erwähnt, die von Omar, es ist ein concat Methode, die ist Teil von ActionView.Dies wird tun, was Sie wollen.

Im Gegensatz zu einer scripting-Sprache, die Flucht, es ist kein Standard-Ausgabe für erb.Da erb ist einfach eine Funktion, und erhält eine Vorlage und-Bindung gibt eine variable, gibt es die Werte von text und Funktionen rekursiv.

Es gibt heiße Diskussionen darüber, wie viel Logik erlaubt sein sollte, in einer Ansicht, aber so wenig wie möglich ist das, was die meisten Menschen anstreben.Wenn Sie setzen mehr code als text in der Ansicht, möchten Sie vielleicht zu prüfen, refactoring Ihres Codes.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top