2013-05-09 168 views
3

我正在使用Ruby on Rails。我有我的目標網頁上的兩個旋轉木馬,和我想知道什麼是存儲和顯示這些圖像的最佳方式:什麼是存儲傳送帶圖像的最佳方式?

方案一

把圖像assets/images,並告訴他們在旋轉木馬。如果這是一個好方法,我可以循環瀏覽文件夾中的圖像,否則我必須指定每個文件?

方案二

創建通過具有特定屬性的圖像的圖像列和循環模式?

其他三個

別的東西

謝謝!

+0

就個人而言,我討厭有文本或數據庫上的文件,因爲當你需要的時候你不能只是「grep」某些東西。 – fotanus 2013-05-09 13:42:13

+0

你會建議什麼? – 2013-05-15 18:34:53

+1

在接受的答案中有一個文件夾中的圖像:-) – fotanus 2013-05-15 18:40:22

回答

8

我建議您不要將它們直接放在assets/images目錄中,因爲您可能會在應用程序中添加特定於應用程序的圖像,而這些圖像在某些時候不會在您的輪播中使用。例如,像app/assets/images/carousel這樣的文件夾可以讓您更輕鬆地確定哪些圖像屬於傳送帶。

在你的控制器中添加類似如下:

@images = Dir.glob("app/assets/images/carousel/*.{gif,jpg,png}") 

然後,在你看來,你可以添加類似如下(假設ERB)

<% @images.each do |image| %> 
    <%= image_tag "carousel/#{image.split('/').last}" %> 
<% end %> 
+4

您應該添加文件擴展名,如果不是,它會讀取非圖像文件(如.gitkeep文件):'Dir.glob(「app/assets/images/carousel/*。jpg「)' – MrYoshiji 2013-05-09 13:27:17

+0

@MrYoshiji非常好點。更新... – senfo 2013-05-09 13:36:02

相關問題