{"id":23588,"library":"django-organizations","title":"django-organizations","description":"Django package providing group accounts (organizations) with user invitations and multi-user membership. Supports Django 4.2–6.0 and Python ≥3.10. Current version 2.6.0 (2025). Releases are sporadic but maintained.","status":"active","version":"2.6.0","language":"python","source_language":"en","source_url":"https://github.com/bennylope/django-organizations","tags":["django","organizations","groups","invitations","multi-user"],"install":[{"cmd":"pip install django-organizations","lang":"bash","label":"pip"}],"dependencies":[{"reason":"Required; version >=4.2","package":"Django","optional":false}],"imports":[{"note":"Organization model is exported from organizations.models, not the base module.","wrong":"from organizations.base import Organization","symbol":"Organization","correct":"from organizations.models import Organization"},{"note":"","wrong":"","symbol":"OrganizationUser","correct":"from organizations.models import OrganizationUser"}],"quickstart":{"code":"# settings.py\nINSTALLED_APPS = [\n    ...\n    'organizations',\n]\n\n# urls.py\nfrom django.urls import include, path\nurlpatterns = [\n    ...\n    path('organizations/', include('organizations.urls')),\n]\n\n# models.py (using default abstract models)\nfrom organizations.models import Organization, OrganizationUser\n\n# Example creation:\nfrom django.contrib.auth import get_user_model\nUser = get_user_model()\nuser = User.objects.create_user('alice', password='password')\norg = Organization.objects.create(name='Acme Inc', slug='acme')\norg_user = org.add_user(user, is_admin=True)","lang":"python","description":"Basic setup: add to INSTALLED_APPS, include URLs, use Organization model."},"warnings":[{"fix":"Upgrade Python to 3.10 or later.","message":"Dropped Python 3.9 support in 2.6.0. Requires Python >=3.10.","severity":"breaking","affected_versions":"2.6.0+"},{"fix":"Upgrade Django to 4.2 or later.","message":"Dropped Django 4.1 support in 2.4.0. Requires Django >=4.2.","severity":"breaking","affected_versions":"2.4.0+"},{"fix":"Import Organization, OrganizationUser from organizations.models instead of organizations.base.","message":"The base abstract models (e.g., BaseOrganization) are not meant for direct instantiation. Use the concrete models from organizations.models.","severity":"deprecated","affected_versions":"all"},{"fix":"Set slug explicitly if you need a different slug, or update slug manually after name change.","message":"The slug field is unique and auto-generated from name on creation unless explicitly provided. Changing name later does not update slug.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run 'pip install django-organizations' and add 'organizations' to INSTALLED_APPS.","cause":"Package not installed or not in INSTALLED_APPS.","error":"ModuleNotFoundError: No module named 'organizations'"},{"fix":"Rename your local app to something else, or use 'organizations' as the label only once.","cause":"Two apps with label 'organizations' in INSTALLED_APPS (e.g., a local app with same name).","error":"django.core.exceptions.ImproperlyConfigured: Application labels aren't unique, duplicates: organizations"},{"fix":"Ensure your Organization model extends organizations.models.AbstractOrganization or use the default model.","cause":"Using a custom Organization model that does not inherit from the mixin providing add_user.","error":"AttributeError: 'Organization' object has no attribute 'add_user'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}