2012-06-17 10 views
9

kładę favicon.ico do /public/ folderu i obejmują następujący kod do strony układuFavicon w Ruby on Rails aplikacji

<%= favicon_link_tag %> 

Ale Pomimo tego, ikona nie jest wyświetlana. Co powinienem zrobić?

+2

Jeśli znajduje się na '/ favicon.ico', przeglądarki automatycznie go podniosą; nie potrzeba niczego w HTML. Jeśli to nie działa, albo Twój plik ICO jest nieprawidłowy, albo przeglądarka buforuje stary, spróbuj wyczyścić pamięć podręczną i spróbuj ponownie. –

Odpowiedz

0

Nie wiem, co to jest favicon_link_tag w Twojej aplikacji, ale generalnie istnieją dwa sposoby tworzenia ulubionych.

  1. Umieść plik ikony w app katalogu (/public). W takim przypadku nie musisz nic robić w swoim kodzie. (Nie działa w seamonkey, działa we wszystkich innych przeglądarek wiem)
  2. Umieść link elementem kodu widoku głównego:

    <link rel="shortcut icon" type="image/vnd.microsoft.icon" href="/relative/path/to/file.ico" /> 
    
+0

['favicon_link_tag'] (http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html#method-i-favicon_link_tag) jest częścią Rails. IE nie obsługuje favikonów PNG. –

+0

@AndrewMarshall muszę kochać IE. Sprawdź edycję. Typ łącza w szczególności. – toniedzwiedz

+2

To naprawdę śmieszne, wiem. Używam komentarzy warunkowych do obsłużenia favikona PNG do "prawdziwych" przeglądarek, a następnie ICO do IE. Również możesz chcieć wyjaśnić "katalog główny", w Railsach root aplikacji jest inny niż publiczny katalog główny, który jest '/ public', a pliki są tam dostępne z HTTP w'/'. –

24

I zmagali się z tym samym. To jest to, co pracował dla mnie:

<%= favicon_link_tag 'favicon.ico' %> 

i przesuwając favicon.ico do katalogu/public/images.

Powodzenia!