summaryrefslogtreecommitdiff
path: root/parts/django/docs/ref/files/file.txt
diff options
context:
space:
mode:
authorNishanth Amuluru2011-01-08 11:20:57 +0530
committerNishanth Amuluru2011-01-08 11:20:57 +0530
commit65411d01d448ff0cd4abd14eee14cf60b5f8fc20 (patch)
treeb4c404363c4c63a61d6e2f8bd26c5b057c1fb09d /parts/django/docs/ref/files/file.txt
parent2e35094d43b4cc6974172e1febf76abb50f086ec (diff)
downloadpytask-65411d01d448ff0cd4abd14eee14cf60b5f8fc20.tar.gz
pytask-65411d01d448ff0cd4abd14eee14cf60b5f8fc20.tar.bz2
pytask-65411d01d448ff0cd4abd14eee14cf60b5f8fc20.zip
Added buildout stuff and made changes accordingly
--HG-- rename : profile/management/__init__.py => eggs/djangorecipe-0.20-py2.6.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/djangorecipe-0.20-py2.6.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => eggs/infrae.subversion-1.4.5-py2.6.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/infrae.subversion-1.4.5-py2.6.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/mercurial-1.7.3-py2.6-linux-x86_64.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => eggs/py-1.4.0-py2.6.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/py-1.4.0-py2.6.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => eggs/zc.buildout-1.5.2-py2.6.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/zc.buildout-1.5.2-py2.6.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => eggs/zc.recipe.egg-1.3.2-py2.6.egg/EGG-INFO/dependency_links.txt rename : profile/management/__init__.py => eggs/zc.recipe.egg-1.3.2-py2.6.egg/EGG-INFO/not-zip-safe rename : profile/management/__init__.py => parts/django/Django.egg-info/dependency_links.txt rename : taskapp/models.py => parts/django/django/conf/app_template/models.py rename : taskapp/tests.py => parts/django/django/conf/app_template/tests.py rename : taskapp/views.py => parts/django/django/conf/app_template/views.py rename : taskapp/views.py => parts/django/django/contrib/gis/tests/geo3d/views.py rename : profile/management/__init__.py => parts/django/tests/modeltests/delete/__init__.py rename : profile/management/__init__.py => parts/django/tests/modeltests/files/__init__.py rename : profile/management/__init__.py => parts/django/tests/modeltests/invalid_models/__init__.py rename : profile/management/__init__.py => parts/django/tests/modeltests/m2m_signals/__init__.py rename : profile/management/__init__.py => parts/django/tests/modeltests/model_package/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/bash_completion/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/bash_completion/management/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/bash_completion/management/commands/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/bash_completion/models.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/delete_regress/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/file_storage/__init__.py rename : profile/management/__init__.py => parts/django/tests/regressiontests/max_lengths/__init__.py rename : profile/forms.py => pytask/profile/forms.py rename : profile/management/__init__.py => pytask/profile/management/__init__.py rename : profile/management/commands/seed_db.py => pytask/profile/management/commands/seed_db.py rename : profile/models.py => pytask/profile/models.py rename : profile/templatetags/user_tags.py => pytask/profile/templatetags/user_tags.py rename : taskapp/tests.py => pytask/profile/tests.py rename : profile/urls.py => pytask/profile/urls.py rename : profile/utils.py => pytask/profile/utils.py rename : profile/views.py => pytask/profile/views.py rename : static/css/base.css => pytask/static/css/base.css rename : taskapp/tests.py => pytask/taskapp/tests.py rename : taskapp/views.py => pytask/taskapp/views.py rename : templates/base.html => pytask/templates/base.html rename : templates/profile/browse_notifications.html => pytask/templates/profile/browse_notifications.html rename : templates/profile/edit.html => pytask/templates/profile/edit.html rename : templates/profile/view.html => pytask/templates/profile/view.html rename : templates/profile/view_notification.html => pytask/templates/profile/view_notification.html rename : templates/registration/activate.html => pytask/templates/registration/activate.html rename : templates/registration/activation_email.txt => pytask/templates/registration/activation_email.txt rename : templates/registration/activation_email_subject.txt => pytask/templates/registration/activation_email_subject.txt rename : templates/registration/logged_out.html => pytask/templates/registration/logged_out.html rename : templates/registration/login.html => pytask/templates/registration/login.html rename : templates/registration/logout.html => pytask/templates/registration/logout.html rename : templates/registration/password_change_done.html => pytask/templates/registration/password_change_done.html rename : templates/registration/password_change_form.html => pytask/templates/registration/password_change_form.html rename : templates/registration/password_reset_complete.html => pytask/templates/registration/password_reset_complete.html rename : templates/registration/password_reset_confirm.html => pytask/templates/registration/password_reset_confirm.html rename : templates/registration/password_reset_done.html => pytask/templates/registration/password_reset_done.html rename : templates/registration/password_reset_email.html => pytask/templates/registration/password_reset_email.html rename : templates/registration/password_reset_form.html => pytask/templates/registration/password_reset_form.html rename : templates/registration/registration_complete.html => pytask/templates/registration/registration_complete.html rename : templates/registration/registration_form.html => pytask/templates/registration/registration_form.html rename : utils.py => pytask/utils.py
Diffstat (limited to 'parts/django/docs/ref/files/file.txt')
-rw-r--r--parts/django/docs/ref/files/file.txt152
1 files changed, 152 insertions, 0 deletions
diff --git a/parts/django/docs/ref/files/file.txt b/parts/django/docs/ref/files/file.txt
new file mode 100644
index 0000000..1374d01
--- /dev/null
+++ b/parts/django/docs/ref/files/file.txt
@@ -0,0 +1,152 @@
+The ``File`` object
+===================
+
+The :mod:`django.core.files` module and its submodules contain built-in classes
+for basic file handling in Django.
+
+.. currentmodule:: django.core.files
+
+The ``File`` Class
+------------------
+
+.. class:: File(file_object)
+
+ The :class:`File` is a thin wrapper around Python's built-in file object
+ with some Django-specific additions. Internally, Django uses this class
+ any time it needs to represent a file.
+
+ :class:`File` objects have the following attributes and methods:
+
+ .. attribute:: name
+
+ The name of file including the relative path from
+ :setting:`MEDIA_ROOT`.
+
+ .. attribute:: size
+
+ The size of the file in bytes.
+
+ .. attribute:: file
+
+ The underlying Python ``file`` object passed to
+ :class:`~django.core.files.File`.
+
+ .. attribute:: mode
+
+ The read/write mode for the file.
+
+ .. method:: open([mode=None])
+
+ Open or reopen the file (which by definition also does
+ ``File.seek(0)``). The ``mode`` argument allows the same values
+ as Python's standard ``open()``.
+
+ When reopening a file, ``mode`` will override whatever mode the file
+ was originally opened with; ``None`` means to reopen with the original
+ mode.
+
+ .. method:: read([num_bytes=None])
+
+ Read content from the file. The optional ``size`` is the number of
+ bytes to read; if not specified, the file will be read to the end.
+
+ .. method:: __iter__()
+
+ Iterate over the file yielding one line at a time.
+
+ .. method:: chunks([chunk_size=None])
+
+ Iterate over the file yielding "chunks" of a given size. ``chunk_size``
+ defaults to 64 KB.
+
+ This is especially useful with very large files since it allows them to
+ be streamed off disk and avoids storing the whole file in memory.
+
+ .. method:: multiple_chunks([chunk_size=None])
+
+ Returns ``True`` if the file is large enough to require multiple chunks
+ to access all of its content give some ``chunk_size``.
+
+ .. method:: write([content])
+
+ Writes the specified content string to the file. Depending on the
+ storage system behind the scenes, this content might not be fully
+ committed until ``close()`` is called on the file.
+
+ .. method:: close()
+
+ Close the file.
+
+ In addition to the listed methods, :class:`~django.core.files.File` exposes
+ the following attributes and methods of the underlying ``file`` object:
+ ``encoding``, ``fileno``, ``flush``, ``isatty``, ``newlines``,
+ ``read``, ``readinto``, ``readlines``, ``seek``, ``softspace``, ``tell``,
+ ``truncate``, ``writelines``, ``xreadlines``.
+
+.. currentmodule:: django.core.files.base
+
+The ``ContentFile`` Class
+-------------------------
+
+.. class:: ContentFile(File)
+
+ The ``ContentFile`` class inherits from :class:`~django.core.files.File`,
+ but unlike :class:`~django.core.files.File` it operates on string content,
+ rather than an actual file. For example::
+
+ from django.core.files.base import ContentFile
+
+ f1 = ContentFile("my string content")
+ f2 = ContentFile(u"my unicode content encoded as UTF-8".encode('UTF-8'))
+
+.. currentmodule:: django.core.files.images
+
+The ``ImageFile`` Class
+-----------------------
+
+.. class:: ImageFile(file_object)
+
+ Django provides a built-in class specifically for images.
+ :class:`django.core.files.images.ImageFile` inherits all the attributes
+ and methods of :class:`~django.core.files.File`, and additionally
+ provides the following:
+
+ .. attribute:: width
+
+ Width of the image in pixels.
+
+ .. attribute:: height
+
+ Height of the image in pixels.
+
+.. currentmodule:: django.core.files
+
+Additional methods on files attached to objects
+-----------------------------------------------
+
+Any :class:`File` that's associated with an object (as with ``Car.photo``,
+below) will also have a couple of extra methods:
+
+.. method:: File.save(name, content, [save=True])
+
+ Saves a new file with the file name and contents provided. This will not
+ replace the existing file, but will create a new file and update the object
+ to point to it. If ``save`` is ``True``, the model's ``save()`` method will
+ be called once the file is saved. That is, these two lines::
+
+ >>> car.photo.save('myphoto.jpg', contents, save=False)
+ >>> car.save()
+
+ are the same as this one line::
+
+ >>> car.photo.save('myphoto.jpg', contents, save=True)
+
+ Note that the ``content`` argument must be an instance of either
+ :class:`File` or of a subclass of :class:`File`, such as
+ :class:`ContentFile`.
+
+.. method:: File.delete([save=True])
+
+ Removes the file from the model instance and deletes the underlying file.
+ If ``save`` is ``True``, the model's ``save()`` method will be called once
+ the file is deleted.