Mam problem z send_file. Nie pomogły mi inne wątki, ani to co podpowiada google…
Mam funkcję ładowania plików przez paperclipa, przy każdym uploadowanym jest link do ściągnięcia, ale gdy ściągam, zwraca mi pusty plik, a w logach jest napisane
encoding error : output conversion failed due to conv error, bytes 0xFF 0xC3 0x98 0xC3
I/O error : encoder error
Tak wygląda akcja ściągania
[code]def download
foto = Foto.find(params[:foto_id])
url = “#{Rails.root.to_s}/public”+foto.object.url(:original,false)
logger.debug url #jak wklejam tą ścieżkę, to pokazuje plik dobrze
po co serwujesz pliki przez send_file z publica ?? Napisz jaki masz system operacyjn i na jakim serwerze to odpalasz.
Zobacz jeszcze czy nie dostarczas złęgo typa
send_file url, :type => 'image/jpeg'
tak swoją drogą to url powinien się nazywać jakoś chyba bardziej trafniej np. path, photo_path. Ogólnie to wszystko powinno wyglądać to troszeczkę inaczej ale nie o to pytasz.
Robię takie wygibasy, bo potrzebuję mieć link, który będzie powodował download pliku, a nie go otwierał. Googlałam, ale nie znalazłam lepszej metody. Jeśli taką znasz, to będę bardzo wdzięczna za podpowiedź.
Jeśli chodzi o nazewnictwo, to jasne, w pierwotnej wersji nazwy były lepiej dobrane, ale po 500 próbie zmiany ładny zapis gdzieś zaginął.
Typ jest na pewno dobry, próbowałam go wypisywać, zapisywać na sztywno, ale nie w tym tkwi błąd.
Używam os x 10.7.4 i na wszelki wypadek odpalałam z webricka i passengera, ale za każdym razem jest ten sam błąd.
Znając moje szczęście to jest to jakaś pierdoła, która mianuje się ogólnym nigdzie nieopisanym błędem.
Finalnie problem został rozwiązany, a spowodowało go before_filtery inicjujące tiny mce. Wiedziałam, że to musi być coś spowodowanego wcześniejszymi ustawieniami. Dałam skip i wszystko się pięknie ściąga.