Commit c5c4bfa1 authored by Emmanuelle Delescolle's avatar Emmanuelle Delescolle Committed by Tim Graham
Browse files

[1.6.x] Fixed #23604 -- Allowed related m2m fields to be references in the admin.

Thanks Simon Charette for review.

Backport of a24cf217 from master
parent 0aad1f1e
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -339,6 +339,11 @@ class BaseModelAdmin(six.with_metaclass(RenameBaseModelAdminMethods)):
        except FieldDoesNotExist:
            return False

        # Check whether this model is the origin of a M2M relationship
        # in which case to_field has to be the pk on this model.
        if opts.many_to_many and field.primary_key:
            return True

        # Make sure at least one of the models registered for this site
        # references this field through a FK or a M2M relationship.
        registered_models = set()
+5 −2
Original line number Diff line number Diff line
@@ -4,12 +4,15 @@ Django 1.4.16 release notes

*Under development*

Django 1.4.16 fixes a regression in the 1.4.14 security release and a bug
preventing the use of some GEOS versions with GeoDjango.
Django 1.4.16 fixes a couple regressions in the 1.4.14 security release and a
bug preventing the use of some GEOS versions with GeoDjango.

Bugfixes
========

* Allowed related many-to-many fields to be referenced in the admin
  (`#23604 <http://code.djangoproject.com/ticket/23604>`_).

* Allowed inline and hidden references to admin fields
  (`#23431 <http://code.djangoproject.com/ticket/23431>`_).

+4 −1
Original line number Diff line number Diff line
@@ -4,10 +4,13 @@ Django 1.5.11 release notes

*Under development*

Django 1.5.11 fixes a regression in the 1.5.9 security release.
Django 1.5.11 fixes a couple regressions in the 1.5.9 security release.

Bugfixes
========

* Allowed related many-to-many fields to be referenced in the admin
  (`#23604 <http://code.djangoproject.com/ticket/23604>`_).

* Allowed inline and hidden references to admin fields
  (`#23431 <http://code.djangoproject.com/ticket/23431>`_).
+4 −1
Original line number Diff line number Diff line
@@ -4,9 +4,12 @@ Django 1.6.8 release notes

*Under development*

Django 1.6.8 fixes a regression in the 1.6.6 security release.
Django 1.6.8 fixes a couple regressions in the 1.6.6 security release.

Bugfixes
========

* Allowed related many-to-many fields to be referenced in the admin
  (:ticket:`23604`).

* Allowed inline and hidden references to admin fields (:ticket:`23431`).
+2 −1
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ from .models import (Article, Chapter, Account, Media, Child, Parent, Picture,
    AdminOrderedCallable, Report, Color2, UnorderedObject, MainPrepopulated,
    RelatedPrepopulated, UndeletableObject, UserMessenger, Simple, Choice,
    ShortMessage, Telegram, ReferencedByParent, ChildOfReferer, M2MReference,
    ReferencedByInline, InlineReference, InlineReferer)
    ReferencedByInline, InlineReference, InlineReferer, Ingredient)


def callable_year(dt_value):
@@ -789,6 +789,7 @@ site.register(Color2, CustomTemplateFilterColorAdmin)
site.register(Simple, AttributeErrorRaisingAdmin)
site.register(UserMessenger, MessageTestingAdmin)
site.register(Choice, ChoiceList)
site.register(Ingredient)

# Register core models we need in our tests
from django.contrib.auth.models import User, Group
Loading