Mein Ziel ersetzen ist so etwas wie ‚b1234‘ in einem Absatz zu finden und ersetzen Sie es mit:korrekte Art und Weise ein Muster finden zu tun und mit einem Link in einer Rails-Ansicht
<a href=http://bugtracker.com/bug/1234>b1234</a>
Ich habe diese mit Klar ruby :
"I fixed b1234 today".gsub(/(b([0-9]+))/i, '<a href=http://bugtracker.com/bug/\2>\1</a>')
Es gibt:
=> "I fixed <a href=http://bugtracker.com/bug/1234>b1234</a> today"
ich folgend in meinen Schienen habe anzuzeigen:
<%= post.content %>
Hinweis: Ich speicher den HTML-Link-Code nicht in meiner DB, wenn Beiträge erstellt werden.
Wenn ich tun:
<%= post.content.gsub(...) %>
I html in der Ausgabedatei entkommen lassen:
<a href= ... instead of <a href= ...
... Und Ich möchte dieses Verhalten, ich will nicht den Benutzern HTML-Posting (iframes wären beängstigend!).
Aber, wie kann ich immer noch die Funktionalität finden und ersetzen, die ich will, ohne die Sicherheit zu opfern? Vielleicht ein Javascript-Ansatz?
Danke!
Die letzte Zeile des Codes ist pure Perfektion! Vielen Dank. – cnandreu
Sie sollten diesen Code wahrscheinlich in eine Hilfsfunktion extrahieren, um das Testen, Wiederverwenden und Verstehen zu erleichtern. –