Material design for django administration

Overview

pypi python django

Django Material Administration

https://raw.githubusercontent.com/MaistrenkoAnton/django-material-admin/master/app/demo/screens/login.png

Quick start

pip install django-material-admin

  1. Add material.admin and material.admin.default to your INSTALLED_APPS setting instead of django.contrib.admin:
  • required
INSTALLED_APPS = (
    'material',
    'material.admin',

    'django.contrib.auth',
    ...
)
  1. Include the material templates URLconf in your project urls.py like this:
  • required
from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]
  1. Register your models in admin.py.
from django.contrib.admin import ModelAdmin, register


from persons.models import Person

@register(Person)
class PersonAdmin(ModelAdmin):
    list_display = ('name', 'first_name', 'last_name')
  1. Add icon to the application in app.py and specify the app usage in __init__.py
https://materializecss.com/icons.html
  • optional

__init.py__

default_app_config = 'persons.apps.PersonsConfig'

apps.py

from django.apps import AppConfig


class PersonsConfig(AppConfig):
    name = 'persons'
    icon_name = 'person'
  1. Add icon to the MaterialModelAdmin in admin.py

Material icon's name sources:

https://materializecss.com/icons.html

https://material.io/resources/icons/?style=baseline

  • optional
from django.contrib.admin import ModelAdmin, register

from persons.models import Person


@register(Person)
class MaterialPersonAdmin(ModelAdmin):
    icon_name = 'person'
  1. Add Admin site configurations to settings.py file:
  • optional

MATERIAL_ADMIN_SITE = {
    'HEADER':  _('Your site header'),  # Admin site header
    'TITLE':  _('Your site title'),  # Admin site title
    'FAVICON':  'path/to/favicon',  # Admin site favicon (path to static should be specified)
    'MAIN_BG_COLOR':  'color',  # Admin site main color, css color should be specified
    'MAIN_HOVER_COLOR':  'color',  # Admin site main hover color, css color should be specified
    'PROFILE_PICTURE':  'path/to/image',  # Admin site profile picture (path to static should be specified)
    'PROFILE_BG':  'path/to/image',  # Admin site profile background (path to static should be specified)
    'LOGIN_LOGO':  'path/to/image',  # Admin site logo on login page (path to static should be specified)
    'LOGOUT_BG':  'path/to/image',  # Admin site background on login/logout pages (path to static should be specified)
    'SHOW_THEMES':  True,  #  Show default admin themes button
    'TRAY_REVERSE': True,  # Hide object-tools and additional-submit-line by default
    'NAVBAR_REVERSE': True,  # Hide side navbar by default
    'SHOW_COUNTS': True, # Show instances counts for each model
    'APP_ICONS': {  # Set icons for applications(lowercase), including 3rd party apps, {'application_name': 'material_icon_name', ...}
        'sites': 'send',
    },
    'MODEL_ICONS': {  # Set icons for models(lowercase), including 3rd party models, {'model_name': 'material_icon_name', ...}
        'site': 'contact_mail',
    }
}

video lessons:

  • PySchool
https://raw.githubusercontent.com/MaistrenkoAnton/django-material-admin/master/app/demo/screens/pyself.png

Video instructions



  • Install Django
https://raw.githubusercontent.com/MaistrenkoAnton/django-material-admin/master/app/demo/screens/material1.png


  • Install Django-material-admin
https://raw.githubusercontent.com/MaistrenkoAnton/django-material-admin/master/app/demo/screens/material2.png


  • Register models for material administration interface
https://raw.githubusercontent.com/MaistrenkoAnton/django-material-admin/master/app/demo/screens/material3.png
Comments
  • Quick start don't work

    Quick start don't work

    I try install django-material-admin, but I don't understand what is the app "persons" ? Why need unregister User and Group models? Is it necessary? I can't go to 3 point.

    bug 
    opened by ovt00 36
  • [QUESTION] Configuring images and color through MATERIAL_ADMIN_SITE

    [QUESTION] Configuring images and color through MATERIAL_ADMIN_SITE

    I need to change the default profile picture to an image that I have locally. But I can't get the picture's path right and couldn't find the solution on other issues or the README.

    Also, I am having problems changing the background color. The README says that I have to specify a CSS color, but It doesn't change neither using the color's name or the color's hex notation.

    Can you help me? What am I doing wrong?

    code:

    STATIC_URL = '/static/'
    LOCALE_PATHS = (PROJECT_DIR + '/locale', )
    
    MATERIAL_ADMIN_SITE = {
        ...
        'PROFILE_PICTURE': 'img/proj_trans_l.png',
        'MAIN_BG_COLOR': '#000000',
        ...
    }
    
    opened by andre-filho 14
  • django-material-admin having trouble with Django==3.2 release

    django-material-admin having trouble with Django==3.2 release

    It seems that django-material-admin is having trouble with Django==3.2 release

    Error that I am receiving is as following:

    /var/www/html/gesi/backend/src/gesi/settings.py changed, reloading.
    Watching for file changes with StatReloader
    Exception in thread django-main-thread:
    Traceback (most recent call last):
      File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
        self.run()
      File "/usr/lib/python3.6/threading.py", line 864, in run
        self._target(*self._args, **self._kwargs)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/utils/autoreload.py", line 64, in wrapper
        fn(*args, **kwargs)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/core/management/commands/runserver.py", line 110, in inner_run
        autoreload.raise_last_exception()
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/utils/autoreload.py", line 87, in raise_last_exception
        raise _exception[1]
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
        autoreload.check_errors(django.setup)()
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/utils/autoreload.py", line 64, in wrapper
        fn(*args, **kwargs)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/__init__.py", line 24, in setup
        apps.populate(settings.INSTALLED_APPS)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/apps/registry.py", line 91, in populate
        app_config = AppConfig.create(entry)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/apps/config.py", line 255, in create
        return app_config_class(app_name, app_module)
      File "/var/www/html/gesi/backend/src/env/lib/python3.6/site-packages/django/apps/config.py", line 39, in __init__
        "The app label '%s' is not a valid Python identifier." % self.label
    django.core.exceptions.ImproperlyConfigured: The app label 'material.admin' is not a valid Python identifier.
    

    Any reason why that is happening? Thank you in advance........

    bug enhancement 
    opened by Vulum 8
  • Some Spanish Translations Missing

    Some Spanish Translations Missing

    Hi Anton, for example, the button All Actions hasn't has a translation in Spanish. Also the Tool's Panel, and so on. I've override the .po file from my project Django but that will be erased when i install/upgrade django.

    Any suggestions for adding that Strings to a custom Translation into my project?

    Thanks in advance

    enhancement 
    opened by h3adHunter 4
  • 1.6.* throwing django error on runserver

    1.6.* throwing django error on runserver

    Hi Anton, im trying to update my django-material-admin version from 1.5.1 to 1.6.10.

    The steps were:

    • install the newest version with pip.
    • added material.admin and material.admin.default to INSTALLED_APPS setting instead of django.contrib.admin into my settings.py file
    • add the path('admin/', admin.site.urls), to urlpatterns in my urls.py file
    • change the imports from material.admin.decorators or options to django.contrib.admin import ModelAdmin, register into my admin.py files.

    When i hit the command python manage.py runserver the error im getting is the following:

    Watching for file changes with StatReloader Performing system checks...

    Exception in thread django-main-thread: Traceback (most recent call last): File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/utils.py", line 66, in getitem return self._engines[alias] KeyError: 'django'

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner self.run() File "/usr/lib/python3.5/threading.py", line 862, in run self._target(*self._args, **self._kwargs) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/utils/autoreload.py", line 54, in wrapper fn(*args, **kwargs) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/core/management/commands/runserver.py", line 117, in inner_run self.check(display_num_errors=True) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/core/management/base.py", line 390, in check include_deployment_checks=include_deployment_checks, File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/core/management/base.py", line 377, in _run_checks return checks.run_checks(**kwargs) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/core/checks/registry.py", line 72, in run_checks new_errors = check(app_configs=app_configs) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/contrib/admin/checks.py", line 79, in check_dependencies for engine in engines.all(): File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/utils.py", line 90, in all return [self[alias] for alias in self] File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/utils.py", line 90, in return [self[alias] for alias in self] File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/utils.py", line 81, in getitem engine = engine_cls(params) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/backends/django.py", line 25, in init options['libraries'] = self.get_templatetag_libraries(libraries) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/backends/django.py", line 43, in get_templatetag_libraries libraries = get_installed_libraries() File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/backends/django.py", line 108, in get_installed_libraries for name in get_package_libraries(pkg): File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/django/template/backends/django.py", line 121, in get_package_libraries module = import_module(entry[1]) File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 986, in _gcd_import File "", line 969, in _find_and_load File "", line 958, in _find_and_load_unlocked File "", line 673, in _load_unlocked File "", line 669, in exec_module File "", line 775, in get_code File "", line 735, in source_to_code File "", line 222, in call_with_frames_removed File "/home/j0t4/Desktop/gaia/proyectos-externos/donde-comemos/donde-comemos-be/lib/python3.5/site-packages/material/admin/templatetags/material.py", line 43 return mark_safe(f""" {name[0]}" type="checkbox" {checked}> """)

                   ^
    

    SyntaxError: invalid syntax

    Same thing is happening with 1.6.9.

    Regards!

    opened by h3adHunter 4
  • Third party integrations not registered in admin

    Third party integrations not registered in admin

    Great work on materializing Django admin, it's brilliant! I am quite intensely using it in one of my projects and the result is great.

    I have found the following issue with third party packages, and I am not sure I am doing something wrong or if it is an actual issue. If you can confirm this behaviour is incorrect, I am happy to try to fix it and submit a PR with it.

    Issue

    Third party packages using admin are not displayed in the index of admin, and their admin views cannot be accessed. This can be reproduced with a very simple setup:

    • pip install django django-material-admin django-invitations
    • Add a basic settings file and add the following apps:
    INSTALLED_APPS = [
        'material.admin',
        'material.contrib.admin',
        'material.contrib.sites',
        ...
        'invitations',
        ...
    ]
    
    • Add the following to urls.py:
    urlpatterns = [
        path('admin/', include('material.admin.urls')),
        path('invitations/', include('invitations.urls', namespace='invitations')),
        ...
    ]
    
    • Run the server.
    • The admin index won't display the Invitation model, which is registered by the django-invitations package.
    • This same setup works removing material.admin and adding django.contrib.admin instead.

    Possible cause

    I believe this is happening because django-material-admin uses its own implementation of AdminSite. Even if it inherits from AdminSite, the package only uses material.admin.sites.site to register admin models. And the recommendation for custom admin views is to use material.admin.decorators.register, which also uses material.admin.sites.site.

    The problem is that third party packages will always use django.contrib.admin.site to register their admin models. As django-material-admin is not using this main site, it does not display all their admin views.

    (Potential) solution

    I believe that simply removing material.admin.sites.site and adding the following in the settings file would work.

    from django.contrib.auth.apps import AuthConfig
    AdminConfig.default_site = 'material.admin.sites.MaterialAdminSite'
    

    This should also work with third party packages because Django would be hooked to the custom MaterialAdminSite and all the apps that register to admin will use this one.

    bug 
    opened by hasier 4
  • Admin TabularInline does not show the delete checkbox

    Admin TabularInline does not show the delete checkbox

    Hello! Very nice looking Django admin theme! Thank you for your hard work.

    I have found that the Tabular Inline does not show the delete checkbox, I seem to have my configurations correctly

    class ChoiceInline(admin.TabularInline):
        model = Choice
        extra = 2
        fields = ['choice_text', 'votes']
        readonly_fields = ['votes']
    
    
    @register(Question)
    class QuestionAdmin(MaterialModelAdmin):
        icon_name = 'question_answer'
        list_display = ('question_text', 'choices_count', 'total_votes',
                        'pub_date')
        search_fields = ['question_text']
        inlines = [ChoiceInline]
    
        def get_changeform_initial_data(self, request):
            return {'pub_date': timezone.now()}
    

    But no delete checkbox image

    However, If I change to StackedInline the delete works image

    Am I doing something wrong? or have I found a bug?

    bug 
    opened by Luis-Palacios 4
  • Exception when trying to open list of objects having multiple pages.

    Exception when trying to open list of objects having multiple pages.

    Hi, first of all thank you very much for this awesome project!

    Today I tried updating the package to the recently released version supporting Django 3.2. I have noticed that when trying to open admin views containing list of objects, if there are a lot of those items (in previous project versions such pages displayed page number like "1, 2, 3, ..., 997, 998", with the "..." (three dots) in the middle) the exception is raised:

    [...]
    project_1                |   File "/usr/local/lib/python3.9/site-packages/material/templatetags/material.py", line 109, in material_paginator_number
    project_1                |     i + 1,
    project_1                |   File "/usr/local/lib/python3.9/site-packages/django/utils/functional.py", line 180, in __add__
    project_1                |     return self.__cast() + other
    project_1                | TypeError: can only concatenate str (not "int") to str
    project_1                | "GET /admin/core/items/ HTTP/1.1" 500 475520
    

    Let me know if I can help any further!

    bug 
    opened by Waszker 3
  • Stacked inline form does not hide

    Stacked inline form does not hide "Delete" button even if the admin.StackedInline child restricts inline deletions

    templates/admin/edit_inline/stacked.html does not seem to respect permissions. Here I explicitly restricted deletions but the "Delete" button still appears (though doesn't delete anything):

    class ParameterValuesInline(admin.StackedInline):
        model = ParameterValue
        verbose_name = _('Value')
        ordering = ("parameter",)
        extra = 0
    
        def has_delete_permission(self, request, obj=None):
            return False
    
    

    In order to get rid of the button we can fix stacked.html like this (the condition is taken from the default django stacked.html):

    {% if inline_admin_formset.formset.can_delete and inline_admin_formset.has_delete_permission and inline_admin_form.original %}
    <div class="stacked-inline-close btn-small btn red">{% trans "Delete" %} <i class="material-icons right">delete_forever</i></div>
    {% endif %}
    
    opened by mtalimanchuk 3
  • Form field widgets ignoring

    Form field widgets ignoring "disabled" property

    widgets.MaterialAdminDateWidget and widgets.MaterialAdminDateWidget are ignoring the disabled argument from the field.

    I.e:

    forms.TimeField(
        widget=widgets.MaterialAdminTimeWidget,
        disabled=True,
    )
    
    forms.DateField(
        widget=widgets.MaterialAdminDateWidget,
        disabled=True,
    )
    

    As they are read-only fields, you can remove the widget but would be good to keep it consistent.

    opened by luigibertaco 3
  • Checkbox in a Tabular Inline form doesn't work

    Checkbox in a Tabular Inline form doesn't work

    Seems the material checkbox is not implemented in admin/edit_inline/tabular.html And the original checkbox is hidden from the view. So where a checkbox should be in the inline form, it shows just blank.

    I really like how the package just works as a drop in replacement of the native admin, but I'm kinda blocked by this feature. Please help 🙏

    bug 
    opened by R4trtry 3
  • TyniMCE didn't work. How the best Django rich text editor to use with Material-Admin?

    TyniMCE didn't work. How the best Django rich text editor to use with Material-Admin?

    Hi there!

    I need to replace textarea with rich text editor in Django Admin.

    I tryed out the TyniMCE lib.

    However the TyniMCE rich text editor do not work when I use the "material.admin" app. The Django admin only display the text editor if I unregister the "material.admin" app. I figured out that they are “incompatible with each other. I guess, the Django-material-admin overrides the tyniMCE's CSS/Js.

    How to solve that problem or
    which are the best Django rich text editor to use while use Material-Admin (material.admin" app) as well? Or

    Thanks in advance.

    opened by Paulo-AndradeDev 0
  • Bump qs from 6.5.2 to 6.5.3

    Bump qs from 6.5.2 to 6.5.3

    Bumps qs from 6.5.2 to 6.5.3.

    Changelog

    Sourced from qs's changelog.

    6.5.3

    • [Fix] parse: ignore __proto__ keys (#428)
    • [Fix] utils.merge: avoid a crash with a null target and a truthy non-array source
    • [Fix] correctly parse nested arrays
    • [Fix] stringify: fix a crash with strictNullHandling and a custom filter/serializeDate (#279)
    • [Fix] utils: merge: fix crash when source is a truthy primitive & no options are provided
    • [Fix] when parseArrays is false, properly handle keys ending in []
    • [Fix] fix for an impossible situation: when the formatter is called with a non-string value
    • [Fix] utils.merge: avoid a crash with a null target and an array source
    • [Refactor] utils: reduce observable [[Get]]s
    • [Refactor] use cached Array.isArray
    • [Refactor] stringify: Avoid arr = arr.concat(...), push to the existing instance (#269)
    • [Refactor] parse: only need to reassign the var once
    • [Robustness] stringify: avoid relying on a global undefined (#427)
    • [readme] remove travis badge; add github actions/codecov badges; update URLs
    • [Docs] Clean up license text so it’s properly detected as BSD-3-Clause
    • [Docs] Clarify the need for "arrayLimit" option
    • [meta] fix README.md (#399)
    • [meta] add FUNDING.yml
    • [actions] backport actions from main
    • [Tests] always use String(x) over x.toString()
    • [Tests] remove nonexistent tape option
    • [Dev Deps] backport from main
    Commits
    • 298bfa5 v6.5.3
    • ed0f5dc [Fix] parse: ignore __proto__ keys (#428)
    • 691e739 [Robustness] stringify: avoid relying on a global undefined (#427)
    • 1072d57 [readme] remove travis badge; add github actions/codecov badges; update URLs
    • 12ac1c4 [meta] fix README.md (#399)
    • 0338716 [actions] backport actions from main
    • 5639c20 Clean up license text so it’s properly detected as BSD-3-Clause
    • 51b8a0b add FUNDING.yml
    • 45f6759 [Fix] fix for an impossible situation: when the formatter is called with a no...
    • f814a7f [Dev Deps] backport from main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump decode-uri-component from 0.2.0 to 0.2.2

    Bump decode-uri-component from 0.2.0 to 0.2.2

    Bumps decode-uri-component from 0.2.0 to 0.2.2.

    Release notes

    Sourced from decode-uri-component's releases.

    v0.2.2

    • Prevent overwriting previously decoded tokens 980e0bf

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.1...v0.2.2

    v0.2.1

    • Switch to GitHub workflows 76abc93
    • Fix issue where decode throws - fixes #6 746ca5d
    • Update license (#1) 486d7e2
    • Tidelift tasks a650457
    • Meta tweaks 66e1c28

    https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.1

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies javascript 
    opened by dependabot[bot] 0
  • Bump pillow from 8.2.0 to 9.3.0

    Bump pillow from 8.2.0 to 9.3.0

    Bumps pillow from 8.2.0 to 9.3.0.

    Release notes

    Sourced from pillow's releases.

    9.3.0

    https://pillow.readthedocs.io/en/stable/releasenotes/9.3.0.html

    Changes

    ... (truncated)

    Changelog

    Sourced from pillow's changelog.

    9.3.0 (2022-10-29)

    • Limit SAMPLESPERPIXEL to avoid runtime DOS #6700 [wiredfool]

    • Initialize libtiff buffer when saving #6699 [radarhere]

    • Inline fname2char to fix memory leak #6329 [nulano]

    • Fix memory leaks related to text features #6330 [nulano]

    • Use double quotes for version check on old CPython on Windows #6695 [hugovk]

    • Remove backup implementation of Round for Windows platforms #6693 [cgohlke]

    • Fixed set_variation_by_name offset #6445 [radarhere]

    • Fix malloc in _imagingft.c:font_setvaraxes #6690 [cgohlke]

    • Release Python GIL when converting images using matrix operations #6418 [hmaarrfk]

    • Added ExifTags enums #6630 [radarhere]

    • Do not modify previous frame when calculating delta in PNG #6683 [radarhere]

    • Added support for reading BMP images with RLE4 compression #6674 [npjg, radarhere]

    • Decode JPEG compressed BLP1 data in original mode #6678 [radarhere]

    • Added GPS TIFF tag info #6661 [radarhere]

    • Added conversion between RGB/RGBA/RGBX and LAB #6647 [radarhere]

    • Do not attempt normalization if mode is already normal #6644 [radarhere]

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies python 
    opened by dependabot[bot] 0
  • TypeError: string indices must be integers

    TypeError: string indices must be integers

    Снимок экрана 2022-08-14 в 21 50 08

    An error occurs when clicking on view all models in the application

    Traceback (most recent call last): File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/core/handlers/exception.py", line 55, in inner response = get_response(request) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/core/handlers/base.py", line 197, in get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY-py3.8/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 261, in wrapper return self.admin_view(view, cacheable)(*args, **kwargs) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/utils/decorators.py", line 133, in wrapped_view response = view_func(request, *args, **kwargs) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY-py3.8/lib/python3.8/site-packages/django/views/decorators/cache.py", line 62, in wrapped_view_func response = view_func(request, *args, **kwargs) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY-py3.8/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 242, in inner return view(request, *args, **kwargs) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 569, in app_index app_list = self.get_app_list(request, app_label) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 539, in get_app_list app_list = sorted(app_dict.values(), key=lambda x: x["name"].lower()) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/contrib/admin/sites.py", line 539, in app_list = sorted(app_dict.values(), key=lambda x: x["name"].lower()) File "/Users/temirovazat/Library/Caches/pypoetry/virtualenvs/remotework-XPHdADY_-py3.8/lib/python3.8/site-packages/django/utils/functional.py", line 150, in wrapper return getattr(res, method_name)(*args, **kw) TypeError: string indices must be integers

    opened by temirovazat 1
Releases(v1.7.14)
Owner
Anton
Anton
Django Smuggler is a pluggable application for Django Web Framework that helps you to import/export fixtures via the automatically-generated administration interface.

Django Smuggler Django Smuggler is a pluggable application for Django Web Framework to easily dump/load fixtures via the automatically-generated admin

semente 373 Dec 26, 2022
WordPress look and feel for Django administration panel

Django WP Admin WordPress look and feel for Django administration panel. Features WordPress look and feel New styles for selector, calendar and timepi

Maciej Marczewski 266 Nov 21, 2022
An administration website for Django

yawd-admin, a django administration website yawd-admin now has a live demo at http://yawd-admin.yawd.eu/. Use demo / demo as username & passowrd. yawd

Pantelis Petridis 140 Oct 30, 2021
📱 An extension for Django admin that makes interface mobile-friendly. Merged into Django 2.0

Django Flat Responsive django-flat-responsive is included as part of Django from version 2.0! ?? Use this app if your project is powered by an older D

elky 248 Sep 2, 2022
An improved django-admin-tools dashboard for Django projects

django-fluent-dashboard The fluent_dashboard module offers a custom admin dashboard, built on top of django-admin-tools (docs). The django-admin-tools

django-fluent 326 Nov 9, 2022
A Django app for easily adding object tools in the Django admin

Django Object Actions If you've ever tried making admin object tools you may have thought, "why can't this be as easy as making Django Admin Actions?"

Chris Chang 524 Dec 26, 2022
Legacy django jet rebooted , supports only Django 3

Django JET Reboot Rebooting the original project : django-jet. Django Jet is modern template for Django admin interface with improved functionality. W

null 215 Dec 31, 2022
Disable dark mode in Django admin user interface in Django 3.2.x.

Django Non Dark Admin Disable or enable dark mode user interface in Django admin panel (Django==3.2). Installation For install this app run in termina

Artem Galichkin 6 Nov 23, 2022
Modern responsive template for the Django admin interface with improved functionality. We are proud to announce completely new Jet. Please check out Live Demo

Django JET Modern template for Django admin interface with improved functionality Attention! NEW JET We are proud to announce completely new Jet. Plea

Geex Arts 3.4k Dec 29, 2022
Drop-in replacement of Django admin comes with lots of goodies, fully extensible with plugin support, pretty UI based on Twitter Bootstrap.

Xadmin Drop-in replacement of Django admin comes with lots of goodies, fully extensible with plugin support, pretty UI based on Twitter Bootstrap. Liv

差沙 4.7k Dec 31, 2022
A Django app that creates automatic web UIs for Python scripts.

Wooey is a simple web interface to run command line Python scripts. Think of it as an easy way to get your scripts up on the web for routine data anal

Wooey 1.9k Jan 1, 2023
A jazzy skin for the Django Admin-Interface (official repository).

Django Grappelli A jazzy skin for the Django admin interface. Grappelli is a grid-based alternative/extension to the Django administration interface.

Patrick Kranzlmueller 3.4k Dec 31, 2022
A Django admin theme using Twitter Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed apps.

django-admin-bootstrapped A Django admin theme using Bootstrap. It doesn't need any kind of modification on your side, just add it to the installed ap

null 1.6k Dec 28, 2022
django's default admin interface made customizable. popup windows replaced by modals. :mage: :zap:

django-admin-interface django-admin-interface is a modern responsive flat admin interface customizable by the admin itself. Features Beautiful default

Fabio Caccamo 1.3k Dec 31, 2022
Extendable, adaptable rewrite of django.contrib.admin

django-admin2 One of the most useful parts of django.contrib.admin is the ability to configure various views that touch and alter data. django-admin2

Jazzband 1.2k Dec 29, 2022
Modern theme for Django admin interface

Django Suit Modern theme for Django admin interface. Django Suit is alternative theme/skin/extension for Django administration interface. Project home

Kaspars Sprogis 2.2k Dec 29, 2022
Jazzy theme for Django

Django jazzmin (Jazzy Admin) Drop-in theme for django admin, that utilises AdminLTE 3 & Bootstrap 4 to make yo' admin look jazzy Installation pip inst

David Farrington 1.2k Jan 8, 2023
With Django Hijack, admins can log in and work on behalf of other users without having to know their credentials.

Django Hijack With Django Hijack, admins can log in and work on behalf of other users without having to know their credentials. Docs See http://django

null 1.2k Jan 5, 2023
Django application and library for importing and exporting data with admin integration.

django-import-export django-import-export is a Django application and library for importing and exporting data with included admin integration. Featur

null 2.6k Jan 7, 2023