Mam problem z uploadem plików z bazy danych MySQL za pomocą attachment_fu. Niestety pliki się nie otwierają. Pojawia się komunikat że plik został uszkodzony. Jest też problem przy wpisywaniu rozmiaru pliku do bazy. Czasami jest to poprawny rozmiar a czasami kolumna size = 0. Wrzucam do bazy pliki formatu pdf(10-25MB).
W modelu mam:
[code]class Model < ActiveRecord::Base
belongs_to :db_files
has_attachment :content_type => ‘application/pdf’,
:storage => :db_file,
:size => 0.megabyte…25.megabytes
validates_as_attachment
end[/code]
W widoku:
<%= link_to model.filename, :action => 'download', :id => model.id %
W controlerze akcja download:
def download
@model = Model.find(params[:id])
headers['Content-Length'] = @model.size
send_data @model.db_file.data, :filename => @model.filename, :type => @model.content_type,:disposition => 'inline'
end