2010-08-16 14 views
27

Jaki jest prawidłowy sposób kierowania żądania za pomocą Sinatry, aby wyświetlał plik bez przetwarzania? Szukam najczęstszego sposobu, w jaki ludzie robią to w ramach Sinatra? Zwykle umieszczam całą moją statyczną zawartość w ścieżce "treści".Ruby/Sinatra - wyświetlanie plików css, javascript lub obrazów

przykładów:
/content/css
/content/img
/content/js

Jak mogę użyć symbolu wieloznacznego służyć aż wszystko pod treścią?

I zaskoczony, nie było prawdziwe przykłady to tutaj:
http://sinatra-book.gittr.com/

Odpowiedz

51

Sinatra i szyn pomocą ścieżki public za statyczny - przykład ./public/javascripts/. Wszystkie pliki znajdujące się w tych ścieżkach będą następnie obsługiwane przez serwer WWW (na przykład Cienki, Pasażer), ale bez potrzeby dodawania adresu URL pod adresem /public (np. Plik o numerze #{my_app_root}/public/javascripts/application.js będzie dostępny za pośrednictwem Internetu pod adresem URL http://#{my_domain}/javascripts/application.js).

+2

więc ten folder publiczny powinien siedzieć obok folderu z moimi widokami - na tym samym poziomie równorzędnym? gdzie chciałbym dowiedzieć się czegoś takiego w Internecie? jakieś dobre strony internetowe, do których możesz mnie skierować? +1 – BuddyJoe

+0

http://www.sinatrarb.com/intro.html – yfeldblum

+0

Nie wiem, jak to przegapiłem. Dzięki. – BuddyJoe

7
get '/notes/images/:file' do 
    send_file('/root/dev/notes/images/'+params[:file], :disposition => 'inline') 
end 
Powiązane problemy