Miałem szczęście z przykładowym kodem znajdującym się na this thread.
włączenie go tutaj w przypadku łącza kiedykolwiek zniknie:
post '/upload' do
unless params[:file] &&
(tmpfile = params[:file][:tempfile]) &&
(name = params[:file][:filename])
@error = "No file selected"
return haml(:upload)
end
STDERR.puts "Uploading file, original name #{name.inspect}"
while blk = tmpfile.read(65536)
# here you would write it to its final location
STDERR.puts blk.inspect
end
"Upload complete"
end
Wtedy twój widok będzie wyglądać następująco. Wykorzystuje haml, ale ważną częścią jest nie zapomnij ustawić enctype w elemencie formularza, w przeciwnym razie po prostu nazwę pliku zamiast obiektu:
%form{:action=>"/upload",:method=>"post" ,:enctype=>"multipart/form-data"}
%input{:type=>"file",:name=>"file"}
%input{:type=>"submit",:value=>"Upload"}
Zakładam, że próbujesz użyć spinacza z tym. Czy możesz ponownie wkleić swój kod (link prowadzi do martwej strony)? W przeciwnym razie, jakie było twoje rozwiązanie? – slant