{"id":21143,"library":"django-currentuser","title":"django-currentuser","description":"A Django middleware and model mixin that automatically saves the current request user as the creator/last modifier of model instances. Version 0.10.0 supports Django 4.2-5.1, Python >=3.10. Released roughly twice per year.","status":"active","version":"0.10.0","language":"python","source_language":"en","source_url":"https://github.com/zsoldosp/django-currentuser","tags":["django","middleware","current user","creator","modifier"],"install":[{"cmd":"pip install django-currentuser","lang":"bash","label":"Default pip install"}],"dependencies":[{"reason":"Primary framework; version >=4.2 required","package":"django","optional":false}],"imports":[{"wrong":"from django_currentuser.middleware import get_current_user","symbol":"get_current_user","correct":"from django_currentuser.middleware import get_current_user"}],"quickstart":{"code":"# settings.py\nINSTALLED_APPS = [\n    'django.contrib.admin',\n    'django.contrib.auth',\n    ...\n]\nMIDDLEWARE = [\n    'django.contrib.sessions.middleware.SessionMiddleware',\n    'django.contrib.auth.middleware.AuthenticationMiddleware',\n    'django_currentuser.middleware.CurrentUserMiddleware',\n    ...\n]\n\n# models.py\nfrom django.db import models\nfrom django_currentuser.db.models import CurrentUserField\n\nclass Article(models.Model):\n    title = models.CharField(max_length=255)\n    created_by = CurrentUserField()\n    updated_by = CurrentUserField(on_update=True)\n\n# migrate and use normally\nfrom django_currentuser.middleware import get_current_user\nuser = get_current_user()  # returns request.user or None","lang":"python","description":"Configure middleware and use CurrentUserField in models to auto-populate creator/updater."},"warnings":[{"fix":"Add null=True, blank=True to the field or ensure get_current_user() never returns None.","message":"CurrentUserField on_update=True requires the field to be nullable or have a default, otherwise saving an existing object without an explicit user will fail.","severity":"gotcha","affected_versions":"all"},{"fix":"Call 'from django_currentuser.middleware import set_current_user; set_current_user(user)' before accessing get_current_user().","message":"Using get_current_user() outside of a request (e.g., in management commands, tests, or Celery tasks) returns None unless you manually set the thread-local user.","severity":"gotcha","affected_versions":"all"},{"fix":"Use 'from django_currentuser.db.models import CurrentUserField'.","message":"The import path 'from django_currentuser.fields import CurrentUserField' is deprecated since v0.5.0.","severity":"deprecated","affected_versions":">=0.5.0, <0.10.0"},{"fix":"Override bulk operations to set the user explicitly, or avoid bulk create/update on models with CurrentUserField.","message":"The update_on_save feature does not work with bulk_create or bulk_update; the current user is only set on individual model save().","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'-5.1':29 '0.10.0':25 '3.10':31 '4.2':28 'automat':11 'creator':41 'creator/last':19 'current':14,39 'currentus':3 'django':2,5,27,37 'django-currentus':1 'instanc':23 'middlewar':6,38 'mixin':9 'model':8,22 'modifi':20,42 'per':35 'python':30 'releas':32 'request':15 'rough':33 'save':12 'support':26 'twice':34 'user':16,40 'version':24 'year':36","created_at":"2026-04-27T16:58:18.154230+00:00","updated_at":"2026-04-27T16:58:18.154230+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmp630f4zec/venv/lib/python3.12/site-packages/django_currentuser/middleware.py\", line 2, in <module>\n    from django.contrib.auth.models import AnonymousUser\n  File \"/tmp/tmp630f4zec/venv/lib/python3.12/site-packa"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.10.0","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/zsoldosp/django-currentuser","docs":null,"changelog":null,"pypi":"https://pypi.org/project/django-currentuser/","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}}