Merge branch 'master' of github.com:django/django
This commit is contained in:
commit
effc2cad95
|
@ -41,7 +41,8 @@
|
|||
text-align: left;
|
||||
}
|
||||
|
||||
.selector .selector-filter label {
|
||||
.selector .selector-filter label,
|
||||
.inline-group .aligned .selector .selector-filter label {
|
||||
width: 16px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.forms.util import flatatt
|
||||
from django.template import loader
|
||||
|
|
|
@ -129,7 +129,7 @@ default options such as :djadminopt:`--verbosity` and :djadminopt:`--traceback`.
|
|||
|
||||
class Command(BaseCommand):
|
||||
...
|
||||
self.can_import_settings = True
|
||||
can_import_settings = True
|
||||
|
||||
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/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
|
||||
|
|
|
@ -888,7 +888,8 @@ through the template engine: the files whose extensions match the
|
|||
with the ``--name`` option. The :class:`template context
|
||||
<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_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``,
|
||||
``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
|
||||
: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%')
|
||||
|
||||
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
|
||||
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
|
||||
|
|
|
@ -220,7 +220,7 @@ more::
|
|||
|
||||
def get_context_data(self, **kwargs):
|
||||
# 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
|
||||
context['book_list'] = Book.objects.all()
|
||||
return context
|
||||
|
@ -284,7 +284,7 @@ technique::
|
|||
from django.views.generic import ListView
|
||||
from books.models import Book
|
||||
|
||||
class AcmeBookListView(ListView):
|
||||
class AcmeBookList(ListView):
|
||||
|
||||
context_object_name = 'book_list'
|
||||
queryset = Book.objects.filter(publisher__name='Acme Publishing')
|
||||
|
@ -361,7 +361,7 @@ use it in the template::
|
|||
|
||||
def get_context_data(self, **kwargs):
|
||||
# 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
|
||||
context['publisher'] = self.publisher
|
||||
return context
|
||||
|
|
Loading…
Reference in New Issue