From 99d76a7d59e7c9fd985ef0720888165d339c9fae Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 14:24:12 +0300 Subject: [PATCH 01/10] added filter for subdomains in MetaTagPath and MetaTagView --- djangoseo/admin.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index 18a29dc..4a515eb 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -80,7 +80,7 @@ def get_view_admin(use_site=False, use_subdomains=False): }) -def register_seo_admin(admin_site, metadata_class): +def register_seo_admin(admin_site, metadata_class, filter_class): """ Register the backends specified in Meta.backends with the admin """ use_sites = metadata_class._meta.use_sites use_subdomains = metadata_class._meta.use_subdomains @@ -107,6 +107,10 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() + list_filter = ( + ('_subdomain', filter_class), + '_site', + ) _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -114,6 +118,10 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() + list_filter = ( + ('_subdomain', filter_class), + '_site', + ) _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) From e20d72795bf2fab1355345798d7d60206b358e9f Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 14:38:55 +0300 Subject: [PATCH 02/10] improvements --- djangoseo/admin.py | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index 4a515eb..b653daa 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -80,7 +80,7 @@ def get_view_admin(use_site=False, use_subdomains=False): }) -def register_seo_admin(admin_site, metadata_class, filter_class): +def register_seo_admin(admin_site, metadata_class, filter_class=None): """ Register the backends specified in Meta.backends with the admin """ use_sites = metadata_class._meta.use_sites use_subdomains = metadata_class._meta.use_subdomains @@ -107,10 +107,11 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - list_filter = ( - ('_subdomain', filter_class), - '_site', - ) + if filter_class: + list_filter = ( + ('_subdomain', filter_class), + '_site', + ) _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -118,10 +119,11 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - list_filter = ( - ('_subdomain', filter_class), - '_site', - ) + if filter_class: + list_filter = ( + ('_subdomain', filter_class), + '_site', + ) _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) From 9e7ecb596fb4c2d40a117edfca9ea0df229bb97b Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 15:45:25 +0300 Subject: [PATCH 03/10] improvements --- djangoseo/admin.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index b653daa..3862ba6 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -80,7 +80,7 @@ def get_view_admin(use_site=False, use_subdomains=False): }) -def register_seo_admin(admin_site, metadata_class, filter_class=None): +def register_seo_admin(admin_site, metadata_class, list_filter=None): """ Register the backends specified in Meta.backends with the admin """ use_sites = metadata_class._meta.use_sites use_subdomains = metadata_class._meta.use_subdomains @@ -100,6 +100,8 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() + if list_filter: + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -107,11 +109,8 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - if filter_class: - list_filter = ( - ('_subdomain', filter_class), - '_site', - ) + if list_filter: + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -119,11 +118,8 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - if filter_class: - list_filter = ( - ('_subdomain', filter_class), - '_site', - ) + if list_filter: + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -131,6 +127,8 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() + if list_filter: + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin) From 5f0edb30f66f39ce081498ffd6993195938fe002 Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 16:13:27 +0300 Subject: [PATCH 04/10] improvements --- djangoseo/admin.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index 3862ba6..b50f34f 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -100,8 +100,7 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() - if list_filter: - list_filter = list_filter + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -109,8 +108,7 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - if list_filter: - list_filter = list_filter + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -118,8 +116,7 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - if list_filter: - list_filter = list_filter + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -127,8 +124,7 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() - if list_filter: - list_filter = list_filter + list_filter = list_filter _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin) From 116eec2ca0af974173814819b4b905b432582e44 Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 16:34:21 +0300 Subject: [PATCH 05/10] improvements --- djangoseo/admin.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index b50f34f..7f1a979 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -80,7 +80,7 @@ def get_view_admin(use_site=False, use_subdomains=False): }) -def register_seo_admin(admin_site, metadata_class, list_filter=None): +def register_seo_admin(admin_site, metadata_class, filter_list=None): """ Register the backends specified in Meta.backends with the admin """ use_sites = metadata_class._meta.use_sites use_subdomains = metadata_class._meta.use_subdomains @@ -100,7 +100,7 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() - list_filter = list_filter + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -108,7 +108,7 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - list_filter = list_filter + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -116,7 +116,7 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - list_filter = list_filter + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -124,7 +124,7 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() - list_filter = list_filter + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin) From 65312741f286e22625952c7bb460c8275c45bef3 Mon Sep 17 00:00:00 2001 From: Sergey Date: Wed, 25 Dec 2019 16:42:36 +0300 Subject: [PATCH 06/10] improvements --- djangoseo/admin.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index 7f1a979..60d800f 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -100,7 +100,8 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() - list_filter = filter_list + if filter_list: + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -108,7 +109,8 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - list_filter = filter_list + if filter_list: + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -116,7 +118,8 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - list_filter = filter_list + if filter_list: + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -124,7 +127,8 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() - list_filter = filter_list + if filter_list: + list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin) From 17a745adeb7456ed75bdce2f3573df8ef5eca443 Mon Sep 17 00:00:00 2001 From: Sergey Date: Mon, 3 Feb 2020 19:59:33 +0300 Subject: [PATCH 07/10] test coverage improved --- djangoseo/admin.py | 8 ++++---- tests/userapp/admin.py | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index 60d800f..c3b34b6 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -100,7 +100,7 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() - if filter_list: + if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -109,7 +109,7 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - if filter_list: + if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -118,7 +118,7 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - if filter_list: + if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -127,7 +127,7 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() - if filter_list: + if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin) diff --git a/tests/userapp/admin.py b/tests/userapp/admin.py index fc5f71a..ec3b3c8 100644 --- a/tests/userapp/admin.py +++ b/tests/userapp/admin.py @@ -12,7 +12,7 @@ class WithMetadataAdmin(admin.ModelAdmin): inlines = [get_inline(Coverage), get_inline(WithSites)] -register_seo_admin(admin.site, Coverage) +register_seo_admin(admin.site, Coverage, ('_site', )) register_seo_admin(admin.site, WithSites) try: From fd1e75012e11495de48b9ef2c377af4596fbd9ea Mon Sep 17 00:00:00 2001 From: Sergey Date: Mon, 3 Feb 2020 20:12:10 +0300 Subject: [PATCH 08/10] test fix --- tests/userapp/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/userapp/admin.py b/tests/userapp/admin.py index ec3b3c8..b6ef463 100644 --- a/tests/userapp/admin.py +++ b/tests/userapp/admin.py @@ -12,7 +12,7 @@ class WithMetadataAdmin(admin.ModelAdmin): inlines = [get_inline(Coverage), get_inline(WithSites)] -register_seo_admin(admin.site, Coverage, ('_site', )) +register_seo_admin(admin.site, Coverage, ('site', )) register_seo_admin(admin.site, WithSites) try: From 40bdfa6c554d77003062d72366c3b571a8be9520 Mon Sep 17 00:00:00 2001 From: Sergey Date: Mon, 3 Feb 2020 20:16:33 +0300 Subject: [PATCH 09/10] test fix --- tests/userapp/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/userapp/admin.py b/tests/userapp/admin.py index b6ef463..06e2b9a 100644 --- a/tests/userapp/admin.py +++ b/tests/userapp/admin.py @@ -12,7 +12,7 @@ class WithMetadataAdmin(admin.ModelAdmin): inlines = [get_inline(Coverage), get_inline(WithSites)] -register_seo_admin(admin.site, Coverage, ('site', )) +register_seo_admin(admin.site, Coverage, ('title', )) register_seo_admin(admin.site, WithSites) try: From a630c45702f6ba459bfaad1dd8b791465a2d804c Mon Sep 17 00:00:00 2001 From: Sergey Date: Mon, 3 Feb 2020 20:28:03 +0300 Subject: [PATCH 10/10] description changed --- djangoseo/admin.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/djangoseo/admin.py b/djangoseo/admin.py index c3b34b6..2e322ec 100644 --- a/djangoseo/admin.py +++ b/djangoseo/admin.py @@ -100,7 +100,7 @@ def get_list_display(): class ModelAdmin(model_admin): form = get_model_form(metadata_class) list_display = model_admin.list_display + get_list_display() - if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен + if filter_list: # Cannot give the filter_list variable name 'list_filter', because there is a name conflict list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('model'), ModelAdmin) @@ -109,7 +109,7 @@ class ModelAdmin(model_admin): class ViewAdmin(view_admin): form = get_view_form(metadata_class) list_display = view_admin.list_display + get_list_display() - if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен + if filter_list: # Cannot give the filter_list variable name 'list_filter', because there is a name conflict list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('view'), ViewAdmin) @@ -118,7 +118,7 @@ class ViewAdmin(view_admin): class PathAdmin(path_admin): form = get_path_form(metadata_class) list_display = path_admin.list_display + get_list_display() - if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен + if filter_list: # Cannot give the filter_list variable name 'list_filter', because there is a name conflict list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('path'), PathAdmin) @@ -127,7 +127,7 @@ class PathAdmin(path_admin): class ModelInstanceAdmin(model_instance_admin): form = get_modelinstance_form(metadata_class) list_display = model_instance_admin.list_display + get_list_display() - if filter_list: # Дать переменной filter_list имя list_filter нельзя, так как происходит конфликт имен + if filter_list: # Cannot give the filter_list variable name 'list_filter', because there is a name conflict list_filter = filter_list _register_admin(admin_site, metadata_class._meta.get_model('modelinstance'), ModelInstanceAdmin)