Problem:
Chciałbym w formularzu ustawiania obrazka dla produktu (tak, rozszerzam sklep opisany w “Agile Web Development With Rails”
) umożliwić administratorowi wybranie obrazka już znajdującego się na serwerze, oczywiście w katalogu images mojej aplikacji.
Problem polega na tym, że ścieżki zwrócone przez Dir[] zwracają ścieżki jak najbardziej poprawne, ale nijak się mające do ścieżek samej aplikacji w RoR.
Rozwiązanie tymczasowe:
- pobranie ścieżki względem aplikacyjnego “roota” (z perspektywy klasy Dir)
- dostosowanie jej do ścieżek aplikacji metodą “na chama”:
class Product < ActiveRecord::Base
(…)
def self.images
imgs = Dir[“public/images/**/*.{gif, jpg, jpeg}”]
imgs.each {|file| file.sub!(/public/,"")}
end
(…)
end
Pytanie:
czy nie dałoby się tego zrobić logiczniej, ładniej, czyściej, elastycznej - słowem bardziej “the Rails way”?