2012-09-16 25 views
5

Chcę użyć popover'a Bootstrap do wyświetlenia awatara użytkownika i adresu e-mail, z możliwością dodania więcej szczegółów w późniejszym terminie.Szyny - renderowanie części wewnątrz Twitter Bootstrap popover

Mam problem z wyświetleniem częściowej do renderowania w polu zawartości łącza. Kod widoku znajduje się poniżej (w HAML).

%span.comment-username 
    =link_to comment.user_name, "#", "title" => comment.user_name, 
     "data-content" => "=render 'users/name_popover'", 
     class: "comment-user-name" 

Obecnie kodowanie treści będzie wyświetlane jako ciąg.

Czy istnieje sposób, aby to zrobić, aby fragment został wstawiony zamiast kodu jako ciąg?

Odpowiedz

10

Chcesz, aby szyny rzeczywiście oceniały zawartość łańcucha, a nie tylko wyświetlały łańcuch. Najprostszym sposobem na to byłoby:

%span.comment-username 
    =link_to comment.user_name, "#", "title" => comment.user_name, 
    "data-content" => "#{render 'users/name_popover'}", 
     class: "comment-user-name" 

To powinno przekazać oświadczenie renderowania do szyn i spowodować, częściowe, jak oczekiwano.

+0

Dzięki - doszedł do tego wniosku po kawałku aprowizacji. Mam nadzieję, że pomaga innym. – jmc

+0

To nie działa dla mnie. Otrzymuję escape HTML. Jakieś sugestie? –

+0

@KyleDecot próbowałeś: html => "true" opcja? – anpsmn

1

Dzięki za odpowiedź jrc - pomógł mi znaleźć rozwiązanie.

Moje rozwiązanie może być przydatne dla innych nie haml ludzi takich jak ja:

`<%= link_to('Service History' , '#', :class => "popover-history", :rel => "popover", :"data-placement" => "bottom", :title => "Service History", :"data-content" => "#{render 'services/service_history'}") %>` 

z

`$(function() { 
$('.popover-history').popover({ html : true }); 
});` 
+0

Chciałem wyświetlić mapy w widoku Rails 4.2.2. Chciałem użyć części zamiast zwykłego kodu HTML, na wypadek gdyby chciałem zmienić formatowanie okna popover. To rozwiązanie odpowiedziało na moje pytanie. –

Powiązane problemy