{"id":23573,"library":"django-extra-settings","title":"django-extra-settings","description":"Manage typed extra settings via Django admin. Current version 0.14.1, release cadence irregular with major upgrades for Django/Python support.","status":"active","version":"0.14.1","language":"python","source_language":"en","source_url":"https://github.com/fabiocaccamo/django-extra-settings","tags":["django","admin","settings","extra-settings","configuration"],"install":[{"cmd":"pip install django-extra-settings","lang":"bash","label":"Default install"}],"dependencies":[{"reason":"Required framework","package":"django","optional":false}],"imports":[{"wrong":"from extra_settings import extra_settings","symbol":"extra_settings","correct":"import extra_settings"}],"quickstart":{"code":"import os\nos.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myproject.settings')\nimport django\ndjango.setup()\n\nfrom extra_settings.models import Setting\n# Create a string setting with a default value\nobj, created = Setting.objects.get_or_create(\n    name='MY_SETTING',\n    defaults={\n        'value_type': 'string',\n        'description': 'My custom setting',\n        'default_value': 'default',\n        'enabled': True\n    }\n)\nprint(f\"Setting MY_SETTING = {obj.current_value}\")\n\n# Or use the getter\nfrom extra_settings import extra_settings\nprint(extra_settings.get_setting('MY_SETTING', default='fallback'))","lang":"python","description":"Quickstart example: create and retrieve a setting."},"warnings":[{"fix":"Update to Python >=3.10 and Django >=4.2","message":"Dropped Python 3.8/3.9 and Django 3.x support in v0.13.0. Upgrade to Python 3.10+/Django 4.2+.","severity":"breaking","affected_versions":"<0.13.0"},{"fix":"If you have custom migrations referencing jsonfield, update to use Django's JSONField.","message":"Removed jsonfield dependency; now uses built-in models.JSONField. Existing migrations may need update.","severity":"breaking","affected_versions":"<=0.12.0"},{"fix":"Use Setting.objects.clear_cache() or extra_settings.clear_cache() after manual changes.","message":"The cached value of settings is only cleared on app ready; if you change a setting manually in code, you must clear cache.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.14.1':14 'admin':11,25 'cadenc':16 'configur':30 'current':12 'django':2,10,24 'django-extra-set':1 'django/python':22 'extra':3,7,28 'extra-set':27 'irregular':17 'major':19 'manag':5 'releas':15 'set':4,8,26,29 'support':23 'type':6 'upgrad':20 'version':13 'via':9","created_at":"2026-05-01T08:08:29.430494+00:00","updated_at":"2026-05-01T08:08:29.430494+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmpxe2vs9bs/venv/lib/python3.12/site-packages/extra_settings/__init__.py\", line 1, in <module>\n    from django.core.exceptions import ImproperlyConfigured\nModuleNotFoundError: No module named 'django'"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.14.1","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/fabiocaccamo/django-extra-settings#readme","docs":"https://github.com/fabiocaccamo/django-extra-settings#readme","changelog":null,"pypi":"https://pypi.org/project/django-extra-settings/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework","database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}