Merge branch 'master' of github.com:django/django
This commit is contained in:
commit
effc2cad95
|
@ -41,7 +41,8 @@
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
.selector .selector-filter label {
|
.selector .selector-filter label,
|
||||||
|
.inline-group .aligned .selector .selector-filter label {
|
||||||
width: 16px;
|
width: 16px;
|
||||||
padding: 2px;
|
padding: 2px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
from django import forms
|
from django import forms
|
||||||
from django.forms.util import flatatt
|
from django.forms.util import flatatt
|
||||||
from django.template import loader
|
from django.template import loader
|
||||||
|
|
|
@ -129,7 +129,7 @@ default options such as :djadminopt:`--verbosity` and :djadminopt:`--traceback`.
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
...
|
...
|
||||||
self.can_import_settings = True
|
can_import_settings = True
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
|
|
||||||
|
|
|
@ -838,17 +838,6 @@ your ``.profile`` to be able to run the package programs from the command-line::
|
||||||
__ http://www.kyngchaos.com/software/frameworks
|
__ http://www.kyngchaos.com/software/frameworks
|
||||||
__ http://www.kyngchaos.com/software/postgres
|
__ http://www.kyngchaos.com/software/postgres
|
||||||
|
|
||||||
.. note::
|
|
||||||
|
|
||||||
Use of these binaries requires Django 1.0.3 and above. If you are
|
|
||||||
using a previous version of Django (like 1.0.2), then you will have
|
|
||||||
to add the following in your settings:
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
GEOS_LIBRARY_PATH='/Library/Frameworks/GEOS.framework/GEOS'
|
|
||||||
GDAL_LIBRARY_PATH='/Library/Frameworks/GDAL.framework/GDAL'
|
|
||||||
|
|
||||||
.. _psycopg2_kyngchaos:
|
.. _psycopg2_kyngchaos:
|
||||||
|
|
||||||
psycopg2
|
psycopg2
|
||||||
|
|
|
@ -888,7 +888,8 @@ through the template engine: the files whose extensions match the
|
||||||
with the ``--name`` option. The :class:`template context
|
with the ``--name`` option. The :class:`template context
|
||||||
<django.template.Context>` used is:
|
<django.template.Context>` used is:
|
||||||
|
|
||||||
- Any option passed to the startapp command
|
- Any option passed to the startapp command (among the command's supported
|
||||||
|
options)
|
||||||
- ``app_name`` -- the app name as passed to the command
|
- ``app_name`` -- the app name as passed to the command
|
||||||
- ``app_directory`` -- the full path of the newly created app
|
- ``app_directory`` -- the full path of the newly created app
|
||||||
|
|
||||||
|
|
|
@ -591,7 +591,11 @@ For each field, we describe the default widget used if you don't specify
|
||||||
* Error message keys: ``required``, ``invalid``, ``missing``, ``empty``,
|
* Error message keys: ``required``, ``invalid``, ``missing``, ``empty``,
|
||||||
``invalid_image``
|
``invalid_image``
|
||||||
|
|
||||||
Using an ImageField requires that the `Python Imaging Library`_ is installed.
|
Using an ``ImageField`` requires that the `Python Imaging Library`_ (PIL)
|
||||||
|
is installed and supports the image formats you use. If you encounter a
|
||||||
|
``corrupt image`` error when you upload an image, it usually means PIL
|
||||||
|
doesn't understand its format. To fix this, install the appropriate
|
||||||
|
library and reinstall PIL.
|
||||||
|
|
||||||
When you use an ``ImageField`` on a form, you must also remember to
|
When you use an ``ImageField`` on a form, you must also remember to
|
||||||
:ref:`bind the file data to the form <binding-uploaded-files>`.
|
:ref:`bind the file data to the form <binding-uploaded-files>`.
|
||||||
|
|
|
@ -1768,22 +1768,6 @@ This queryset will be evaluated as subselect statement::
|
||||||
|
|
||||||
SELECT ... WHERE blog.id IN (SELECT id FROM ... WHERE NAME LIKE '%Cheddar%')
|
SELECT ... WHERE blog.id IN (SELECT id FROM ... WHERE NAME LIKE '%Cheddar%')
|
||||||
|
|
||||||
The above code fragment could also be written as follows::
|
|
||||||
|
|
||||||
inner_q = Blog.objects.filter(name__contains='Cheddar').values('pk').query
|
|
||||||
entries = Entry.objects.filter(blog__in=inner_q)
|
|
||||||
|
|
||||||
.. warning::
|
|
||||||
|
|
||||||
This ``query`` attribute should be considered an opaque internal attribute.
|
|
||||||
It's fine to use it like above, but its API may change between Django
|
|
||||||
versions.
|
|
||||||
|
|
||||||
This second form is a bit less readable and unnatural to write, since it
|
|
||||||
accesses the internal ``query`` attribute and requires a ``ValuesQuerySet``.
|
|
||||||
If your code doesn't require compatibility with Django 1.0, use the first
|
|
||||||
form, passing in a queryset directly.
|
|
||||||
|
|
||||||
If you pass in a ``ValuesQuerySet`` or ``ValuesListQuerySet`` (the result of
|
If you pass in a ``ValuesQuerySet`` or ``ValuesListQuerySet`` (the result of
|
||||||
calling ``values()`` or ``values_list()`` on a queryset) as the value to an
|
calling ``values()`` or ``values_list()`` on a queryset) as the value to an
|
||||||
``__in`` lookup, you need to ensure you are only extracting one field in the
|
``__in`` lookup, you need to ensure you are only extracting one field in the
|
||||||
|
|
|
@ -157,7 +157,7 @@ might look like the following::
|
||||||
That's really all there is to it. All the cool features of generic views come
|
That's really all there is to it. All the cool features of generic views come
|
||||||
from changing the attributes set on the generic view. The
|
from changing the attributes set on the generic view. The
|
||||||
:doc:`generic views reference</ref/class-based-views/index>` documents all the
|
:doc:`generic views reference</ref/class-based-views/index>` documents all the
|
||||||
generic views and their options in detail; the rest of this document will
|
generic views and their options in detail; the rest of this document will
|
||||||
consider some of the common ways you might customize and extend generic views.
|
consider some of the common ways you might customize and extend generic views.
|
||||||
|
|
||||||
|
|
||||||
|
@ -220,7 +220,7 @@ more::
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
# Call the base implementation first to get a context
|
# Call the base implementation first to get a context
|
||||||
context = super(PublisherDetailView, self).get_context_data(**kwargs)
|
context = super(PublisherDetail, self).get_context_data(**kwargs)
|
||||||
# Add in a QuerySet of all the books
|
# Add in a QuerySet of all the books
|
||||||
context['book_list'] = Book.objects.all()
|
context['book_list'] = Book.objects.all()
|
||||||
return context
|
return context
|
||||||
|
@ -284,7 +284,7 @@ technique::
|
||||||
from django.views.generic import ListView
|
from django.views.generic import ListView
|
||||||
from books.models import Book
|
from books.models import Book
|
||||||
|
|
||||||
class AcmeBookListView(ListView):
|
class AcmeBookList(ListView):
|
||||||
|
|
||||||
context_object_name = 'book_list'
|
context_object_name = 'book_list'
|
||||||
queryset = Book.objects.filter(publisher__name='Acme Publishing')
|
queryset = Book.objects.filter(publisher__name='Acme Publishing')
|
||||||
|
@ -361,7 +361,7 @@ use it in the template::
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
# Call the base implementation first to get a context
|
# Call the base implementation first to get a context
|
||||||
context = super(PublisherBookListView, self).get_context_data(**kwargs)
|
context = super(PublisherBookList, self).get_context_data(**kwargs)
|
||||||
# Add in the publisher
|
# Add in the publisher
|
||||||
context['publisher'] = self.publisher
|
context['publisher'] = self.publisher
|
||||||
return context
|
return context
|
||||||
|
|
Loading…
Reference in New Issue