2012-04-08 1 views
1

Ich erstelle eine "Compound" -Link mit link_to. Der Linktext hat einen Präfixteil, der in einem CSS-Stil formatiert ist, und einen Wurzelteil, der in einem anderen CSS-Stil formatiert ist. Zum Beispiel:Rails 3 - link_to() - benötigen mehrere Textsegmente mit separaten HTML/CSS-Klassen in einem einzigen Link

preProzess

Ich habe in der Lage gewesen, dies mit zwei bis derb zu erreichen, Back-to-back link_to Aussagen:

<div class="dual-format-link"> 
    <%= link_to 'pre', compound_path, :class => "prefix-style" %><%= link_to 'process', compound_path, :class => "root-style" %> 
</div> 

Leider ist die Überroll beeinflussen zeigt deutlich, dass dies zwei verschiedene Links sind, die nebeneinander angeordnet sind. Die Tatsache, dass es sich nicht um einen einzelnen, einheitlichen Link handelt, führt zu Verwirrung bei den Benutzern.

Ich habe versucht, HTML in link_to das erste Argument, aber es wird als Raw HTML angezeigt.

Gibt es eine Möglichkeit, link_to dies zu tun? Gibt es Alternativen zu link_to, die funktionieren würden?

Antwort

2

Sie haben Rails zu sagen, dass die HTML in Ordnung ist als HTML statt entkam Klartext durch html_safe mit zu machen:

<div class="dual-format-link"> 
    <%= link_to '<span class="prefix-style">pre</span><span class="root-style">process</span>'.html_safe, compound_path %> 
</div> 

Siehe http://yehudakatz.com/2010/02/01/safebuffers-and-rails-3-0/ für weitere Informationen.

+0

Funktioniert gut! Vielen Dank. –

Verwandte Themen