Class: ActionDispatch::Http::UploadedFile
Relationships & Source Files | |
Inherits: | Object |
Defined in: | actionpack/lib/action_dispatch/http/upload.rb |
Overview
Models uploaded files.
The actual file is accessible via the #tempfile accessor, though some of its interface is available directly for convenience.
Uploaded files are temporary files whose lifespan is one request. When the object is finalized Ruby unlinks the file, so there is no need to clean them with a separate maintenance task.
Instance Attribute Summary
-
#content_type
rw
A string with the MIME type of the file.
-
#eof? ⇒ Boolean
readonly
Shortcut for
tempfile.eof?
. -
#headers
rw
A string with the headers of the multipart request.
-
#original_filename
rw
The basename of the file in the client.
-
#tempfile
(also: #to_io)
rw
A
Tempfile
object with the actual uploaded file. -
#to_io
readonly
Alias for #tempfile.
Instance Method Summary
-
#close(unlink_now = false)
Shortcut for
tempfile.close
. -
#open
Shortcut for
tempfile.open
. -
#path
Shortcut for
tempfile.path
. -
#read(length = nil, buffer = nil)
Shortcut for
tempfile.read
. -
#rewind
Shortcut for
tempfile.rewind
. -
#size
Shortcut for
tempfile.size
.
Instance Attribute Details
#content_type (rw)
A string with the MIME type of the file.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 16
attr_accessor :content_type
#eof? ⇒ Boolean
(readonly)
Shortcut for tempfile.eof?
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 73
def eof? @tempfile.eof? end
#headers (rw)
A string with the headers of the multipart request.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 24
attr_accessor :headers
#original_filename (rw)
The basename of the file in the client.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 13
attr_accessor :original_filename
#tempfile (rw) Also known as: #to_io
A Tempfile
object with the actual uploaded file. Note that some of its interface is available directly.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 20
attr_accessor :tempfile
#to_io (readonly)
Alias for #tempfile.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 21
alias :to_io :tempfile
Instance Method Details
#close(unlink_now = false)
Shortcut for tempfile.close
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 53
def close(unlink_now=false) @tempfile.close(unlink_now) end
#open
Shortcut for tempfile.open
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 48
def open @tempfile.open end
#path
Shortcut for tempfile.path
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 58
def path @tempfile.path end
#read(length = nil, buffer = nil)
Shortcut for tempfile.read
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 43
def read(length=nil, buffer=nil) @tempfile.read(length, buffer) end
#rewind
Shortcut for tempfile.rewind
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 63
def rewind @tempfile.rewind end
#size
Shortcut for tempfile.size
.
# File 'actionpack/lib/action_dispatch/http/upload.rb', line 68
def size @tempfile.size end