2012-04-08 1 views
1

Я создаю «составную» ссылку, используя link_to. Текст ссылки имеет часть префикса, отформатированную в одном стиле CSS, и корневую часть, отформатированную в другом стиле CSS. Например:Rails 3 - link_to() - требуется несколько текстовых сегментов с отдельными классами HTML/CSS в одной ссылке

предварительнопроцесса

Я был в состоянии грубо добиться этого с двумя, спиной к спине link_to заявления:

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

К сожалению опрокидывание влияет ясно показывает, что это две разные связи, расположенные бок о бок. Тот факт, что это не единая, унифицированная ссылка, вызывает путаницу пользователя.

Я попытался поместить HTML в первый аргумент link_to, но он отображается как необработанный HTML.

Есть ли способ иметь link_to сделать это? Существуют ли альтернативы link_to, которые будут работать?

ответ

2

Вы должны сказать Rails, что HTML это хорошо, чтобы сделать, как HTML вместо сбежавшего обычного текста с помощью html_safe:

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

http://yehudakatz.com/2010/02/01/safebuffers-and-rails-3-0/ См для получения дополнительной информации.

+0

Отлично работает! Благодарю. –