From caf0ae2e1837dfdabc5bf81917a10eae82614881 Mon Sep 17 00:00:00 2001 From: dnaranjo89 Date: Mon, 15 Feb 2016 11:08:09 +0100 Subject: [PATCH 1/4] Fixup import GenericForeignKey --- django_settings/models.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/django_settings/models.py b/django_settings/models.py index 57913bd..f33e12d 100644 --- a/django_settings/models.py +++ b/django_settings/models.py @@ -2,7 +2,10 @@ # framework from django.db import models from django.contrib.contenttypes.models import ContentType -from django.contrib.contenttypes import generic +try: + from django.contrib.contenttypes.fields import GenericForeignKey +except: + from django.contrib.contenttypes.generic import GenericForeignKey from django.utils.translation import ugettext_lazy as _ from django.dispatch import receiver from django.db.models.signals import post_syncdb @@ -61,7 +64,7 @@ class Meta: setting_type = models.ForeignKey(ContentType) setting_id = models.PositiveIntegerField() - setting_object = generic.GenericForeignKey('setting_type', 'setting_id') + setting_object = GenericForeignKey('setting_type', 'setting_id') name = models.CharField(max_length=255, unique=conf.DJANGO_SETTINGS_UNIQUE_NAMES) From 46c1cabefc16aae2d18bb25ee8d35e4f638a2e89 Mon Sep 17 00:00:00 2001 From: dnaranjo89 Date: Mon, 15 Feb 2016 11:10:34 +0100 Subject: [PATCH 2/4] Fixup import post_syncdb (renamed to post_migrate in Django 1.7) --- django_settings/models.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/django_settings/models.py b/django_settings/models.py index f33e12d..bbbb159 100644 --- a/django_settings/models.py +++ b/django_settings/models.py @@ -8,7 +8,10 @@ from django.contrib.contenttypes.generic import GenericForeignKey from django.utils.translation import ugettext_lazy as _ from django.dispatch import receiver -from django.db.models.signals import post_syncdb +try: + from django.db.models.signals import post_migrate +except: + from django.db.models.signals import post_syncdb as post_migrate from .moduleregistry import new_registry @@ -114,7 +117,7 @@ class Meta: # end ################### -@receiver(post_syncdb) +@receiver(post_migrate) def handle_post_syncdb(sender, **kwargs): from django_settings.dataapi import initialize_data initialize_data() From 51bb48e4f253e7c0cf3629022abece4d0be04c04 Mon Sep 17 00:00:00 2001 From: dnaranjo89 Date: Mon, 15 Feb 2016 11:29:40 +0100 Subject: [PATCH 3/4] Fixup cl.opts.module_name Ranamed to cl.opts.model_name in Django 1.8 --- django_settings/templatetags/settings_admin_urls.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/django_settings/templatetags/settings_admin_urls.py b/django_settings/templatetags/settings_admin_urls.py index e76e073..1b648b2 100644 --- a/django_settings/templatetags/settings_admin_urls.py +++ b/django_settings/templatetags/settings_admin_urls.py @@ -8,7 +8,11 @@ @register.filter def add_url_for_setting_type(admin_change_list, type_name): cl = admin_change_list - url_name = 'admin:%s_%s_%s' % (cl.opts.app_label, cl.opts.module_name, 'add') + try: + model_name = cl.opts.model_name + except AttributeError: + model_name = cl.opts.module_name + url_name = 'admin:%s_%s_%s' % (cl.opts.app_label, model_name, 'add') query = "typename=%(type)s%(popup)s" % dict( type=type_name, popup='_popup=1' if cl.is_popup else '', From 52c9d75c536d3dd094d73f965d082a822bde4425 Mon Sep 17 00:00:00 2001 From: dnaranjo89 Date: Mon, 15 Feb 2016 11:30:49 +0100 Subject: [PATCH 4/4] Use request.GET instead of request.REQUEST Decprecated in Django 1.7 --- django_settings/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/django_settings/admin.py b/django_settings/admin.py index fb5f1d3..2cab952 100644 --- a/django_settings/admin.py +++ b/django_settings/admin.py @@ -50,7 +50,7 @@ def get_setting_model(self, obj, request): if obj: return obj.setting_object.__class__ try: - typename = request.REQUEST['typename'] # NOTE: both lines might + typename = request.GET['typename'] # NOTE: both lines might return dataapi.data.model_for_name(typename) # raise KeyError except KeyError: raise Http404