Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #2064 -- Added 'Falling back to raw SQL' section to docs/db-api…

….txt

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3054 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 1717b94fc85430a1b0b8626d9b932fda58563e50 1 parent fe4139d
Adrian Holovaty adrianholovaty authored
Showing with 20 additions and 0 deletions.
  1. +20 −0 docs/db-api.txt
20 docs/db-api.txt
View
@@ -1578,3 +1578,23 @@ get_FOO_height() and get_FOO_width()
For every ``ImageField``, the object will have ``get_FOO_height()`` and
``get_FOO_width()`` methods, where ``FOO`` is the name of the field. This
returns the height (or width) of the image, as an integer, in pixels.
+
+Falling back to raw SQL
+=======================
+
+If you find yourself needing to write an SQL query that is too complex for
+Django's database-mapper to handle, you can fall back into raw-SQL statement
+mode.
+
+The preferred way to do this is by giving your model custom methods or custom
+manager methods that execute queries. Although there's nothing in Django that
+*requires* database queries to live in the model layer, this approach keeps all
+your data-access logic in one place, which is smart from an code-organization
+standpoint. For instructions, see `Executing custom SQL`_.
+
+Finally, it's important to note that the Django database layer is merely an
+interface to your database. You can access your database via other tools,
+programming languages or database frameworks; there's nothing Django-specific
+about your database.
+
+.. _Executing custom SQL: http://www.djangoproject.com/documentation/model_api/#executing-custom-sql
Please sign in to comment.
Something went wrong with that request. Please try again.