diff --git a/GeneralApp/admin.py b/GeneralApp/admin.py index 86dde16..5932b0a 100644 --- a/GeneralApp/admin.py +++ b/GeneralApp/admin.py @@ -4,22 +4,36 @@ from django.contrib import admin class Admin_StaticPage(Admin_Trans_BaseModelViewPage): - def get_fieldsets(self, request, obj=None): - fieldsets = super(type(self), self).get_fieldsets(request, obj) - if not request.user.is_superuser and obj.url and obj.url in ('main', 'spec_technics', 'works'): - fieldsets[0][1]['fields'].pop(2) - # fieldsets.insert( - # 1, ('Промо-хэдер', { - # 'classes': ['wide'], - # 'fields': ( - # 'promo_header', - # 'title', 'description', 'text', - # 'picture', - # ) - # - # }) - # ) - return fieldsets + fieldsets = [ + (None, { + 'classes': ['wide'], + 'fields': ('name', + 'title', 'description', 'text', + 'picture', + 'order', + ) + }), + ('SEO', { + 'classes': ['wide', 'collapse'], + 'fields': ( + 'seo_title', 'seo_description', 'seo_keywords', 'seo_text', + ) + }), + ] + + + list_display = [ + 'id', + 'name', 'title', + 'order', 'modifiedDT', 'createDT' + ] + + list_display_links = ['id'] + list_editable = ['order'] + + list_filter = ['modifiedDT', 'createDT'] + search_fields = ['name', 'title'] + # filter_horizontal = ['options'] def has_delete_permission(self, request, obj=None): if request.user.is_superuser: diff --git a/GeneralApp/migrations/0003_staticpage_seo_description_en_and_more.py b/GeneralApp/migrations/0003_staticpage_seo_description_en_and_more.py new file mode 100644 index 0000000..337cedd --- /dev/null +++ b/GeneralApp/migrations/0003_staticpage_seo_description_en_and_more.py @@ -0,0 +1,44 @@ +# Generated by Django 4.2.2 on 2023-08-31 13:21 + +import ckeditor.fields +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('GeneralApp', '0002_block_faq_title_en_block_faq_title_ru_and_more'), + ] + + operations = [ + migrations.AddField( + model_name='staticpage', + name='seo_description_en', + field=models.CharField(blank=True, max_length=250, null=True, verbose_name='Description (150 знаков)'), + ), + migrations.AddField( + model_name='staticpage', + name='seo_description_ru', + field=models.CharField(blank=True, max_length=250, null=True, verbose_name='Description (150 знаков)'), + ), + migrations.AddField( + model_name='staticpage', + name='seo_text_en', + field=ckeditor.fields.RichTextField(blank=True, null=True, verbose_name='Текст SEO статьи'), + ), + migrations.AddField( + model_name='staticpage', + name='seo_text_ru', + field=ckeditor.fields.RichTextField(blank=True, null=True, verbose_name='Текст SEO статьи'), + ), + migrations.AddField( + model_name='staticpage', + name='seo_title_en', + field=models.CharField(blank=True, max_length=250, null=True, verbose_name='Title (80 знаков)'), + ), + migrations.AddField( + model_name='staticpage', + name='seo_title_ru', + field=models.CharField(blank=True, max_length=250, null=True, verbose_name='Title (80 знаков)'), + ), + ] diff --git a/GeneralApp/translation.py b/GeneralApp/translation.py index d858c2a..59a74b2 100644 --- a/GeneralApp/translation.py +++ b/GeneralApp/translation.py @@ -4,7 +4,7 @@ from .models import * class StaticPage_TranslationOptions(TranslationOptions): fields = ( - 'name', 'description', 'text', 'title', 'FAQ_title' + 'name', 'description', 'text', 'title', 'FAQ_title', 'seo_title', 'seo_description', 'seo_text' ) translator.register(StaticPage, StaticPage_TranslationOptions)