From 6e61587b27ed366b337f9cd45a02fbad91502eee Mon Sep 17 00:00:00 2001 From: Anatoly Date: Wed, 15 Jan 2020 23:19:17 +0300 Subject: [PATCH] refactor admin panel, remove unused field from model NavBarPermission --- apps/account/admin.py | 2 +- apps/comment/serializers/__init__.py | 2 +- apps/comment/serializers/back.py | 8 -------- apps/comment/views/back.py | 6 +++--- apps/main/admin.py | 5 +++-- ...49_remove_navigationbarpermission_section.py | 17 +++++++++++++++++ apps/main/models.py | 4 ---- apps/main/serializers/common.py | 4 ++-- 8 files changed, 27 insertions(+), 21 deletions(-) create mode 100644 apps/main/migrations/0049_remove_navigationbarpermission_section.py diff --git a/apps/account/admin.py b/apps/account/admin.py index 04923cc9..b3302eae 100644 --- a/apps/account/admin.py +++ b/apps/account/admin.py @@ -7,7 +7,7 @@ from account import models @admin.register(models.Role) class RoleAdmin(admin.ModelAdmin): - list_display = ['role', 'country'] + list_display = ['id', 'role', 'country'] raw_id_fields = ['country', ] diff --git a/apps/comment/serializers/__init__.py b/apps/comment/serializers/__init__.py index 1a751cee..5c0d260f 100644 --- a/apps/comment/serializers/__init__.py +++ b/apps/comment/serializers/__init__.py @@ -1,4 +1,4 @@ +from .common import * from .mobile import * from .back import * from .web import * -from .common import * diff --git a/apps/comment/serializers/back.py b/apps/comment/serializers/back.py index 325086c0..8abdddf2 100644 --- a/apps/comment/serializers/back.py +++ b/apps/comment/serializers/back.py @@ -1,9 +1 @@ """Comment app common serializers.""" -from comment import models -from rest_framework import serializers - - -class CommentBaseSerializer(serializers.ModelSerializer): - class Meta: - model = models.Comment - fields = ('id', 'text', 'mark', 'user', 'object_id', 'content_type') \ No newline at end of file diff --git a/apps/comment/views/back.py b/apps/comment/views/back.py index a46b70cb..e5e1ee51 100644 --- a/apps/comment/views/back.py +++ b/apps/comment/views/back.py @@ -1,19 +1,19 @@ from rest_framework import generics, permissions -from comment.serializers import back as serializers +from comment.serializers import CommentBaseSerializer from comment import models from utils.permissions import IsCommentModerator, IsCountryAdmin class CommentLstView(generics.ListCreateAPIView): """Comment list create view.""" - serializer_class = serializers.CommentBaseSerializer + serializer_class = CommentBaseSerializer queryset = models.Comment.objects.all() # permission_classes = [permissions.IsAuthenticatedOrReadOnly| IsCommentModerator|IsCountryAdmin] class CommentRUDView(generics.RetrieveUpdateDestroyAPIView): """Comment RUD view.""" - serializer_class = serializers.CommentBaseSerializer + serializer_class = CommentBaseSerializer queryset = models.Comment.objects.all() permission_classes = [IsCommentModerator] # permission_classes = [IsCountryAdmin | IsCommentModerator] diff --git a/apps/main/admin.py b/apps/main/admin.py index 1cd6a774..b0fc63a3 100644 --- a/apps/main/admin.py +++ b/apps/main/admin.py @@ -25,6 +25,7 @@ class SiteFeatureAdmin(admin.ModelAdmin): @admin.register(models.Feature) class FeatureAdmin(admin.ModelAdmin): """Feature admin conf.""" + list_display = ['id', '__str__', 'priority', 'route', ] @admin.register(models.AwardType) @@ -54,6 +55,7 @@ class CarouselAdmin(admin.ModelAdmin): @admin.register(models.PageType) class PageTypeAdmin(admin.ModelAdmin): """PageType admin.""" + list_display = ['id', '__str__', ] @admin.register(models.Page) @@ -93,8 +95,7 @@ class PanelAdmin(admin.ModelAdmin): @admin.register(models.NavigationBarPermission) class NavigationBarPermissionAdmin(admin.ModelAdmin): """NavigationBarPermission admin.""" - list_display = ('section', 'permission_mode_display', ) - raw_id_fields = ('section', ) + list_display = ('id', 'permission_mode_display', ) def permission_mode_display(self, obj): """Get permission mode display.""" diff --git a/apps/main/migrations/0049_remove_navigationbarpermission_section.py b/apps/main/migrations/0049_remove_navigationbarpermission_section.py new file mode 100644 index 00000000..97358610 --- /dev/null +++ b/apps/main/migrations/0049_remove_navigationbarpermission_section.py @@ -0,0 +1,17 @@ +# Generated by Django 2.2.7 on 2020-01-15 20:17 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('main', '0048_auto_20200115_1944'), + ] + + operations = [ + migrations.RemoveField( + model_name='navigationbarpermission', + name='section', + ), + ] diff --git a/apps/main/models.py b/apps/main/models.py index 7f54108a..ea853c04 100644 --- a/apps/main/models.py +++ b/apps/main/models.py @@ -548,10 +548,6 @@ class NavigationBarPermission(ProjectBaseMixin): (WRITE, _('write')), ) - section = models.ForeignKey('main.SiteFeature', - related_name='old_sections', - on_delete=models.CASCADE, - verbose_name=_('section')) sections = models.ManyToManyField('main.SiteFeature', verbose_name=_('sections')) permission_mode = models.PositiveSmallIntegerField(choices=PERMISSION_MODES, diff --git a/apps/main/serializers/common.py b/apps/main/serializers/common.py index a954c649..6a556ee6 100644 --- a/apps/main/serializers/common.py +++ b/apps/main/serializers/common.py @@ -333,7 +333,7 @@ class PanelExecuteSerializer(serializers.ModelSerializer): class NavigationBarPermissionBaseSerializer(serializers.ModelSerializer): """Navigation bar permission serializer.""" - section = NavigationBarSectionBaseSerializer(read_only=True) + sections = NavigationBarSectionBaseSerializer(many=True, read_only=True) permission_mode_display = serializers.CharField(source='get_permission_mode_display', read_only=True) @@ -342,6 +342,6 @@ class NavigationBarPermissionBaseSerializer(serializers.ModelSerializer): model = models.NavigationBarPermission fields = [ 'id', - 'section', + 'sections', 'permission_mode_display', ]