diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py
index b3fc034fdf7c4c4fab60f0467e357465838cf8d9..820a58c82b140e026e4a3e62ffda73e96ea2cbfb 100644
--- a/aleksis/apps/alsijil/model_extensions.py
+++ b/aleksis/apps/alsijil/model_extensions.py
@@ -7,6 +7,8 @@ from django.utils.translation import gettext as _
 
 import reversion
 from calendarweek import CalendarWeek
+from django_global_request.middleware import get_request
+from reversion import set_user
 
 from aleksis.apps.chronos.models import LessonPeriod
 from aleksis.core.models import Group, Person
@@ -55,6 +57,7 @@ def mark_absent(
             continue
 
         with reversion.create_revision():
+            set_user(get_request().user)
             personal_note, created = (
                 PersonalNote.objects.select_related(None)
                 .prefetch_related(None)
diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py
index 21703feaf1a8aa8bc499ed11e3864a916520c6b2..5c0d38ca8bb239db6acd65e53b1d5b2600b35c8b 100644
--- a/aleksis/apps/alsijil/views.py
+++ b/aleksis/apps/alsijil/views.py
@@ -121,6 +121,7 @@ def lesson(
             "alsijil.edit_lessondocumentation", lesson_period
         ):
             with reversion.create_revision():
+                reversion.set_user(request.user)
                 lesson_documentation_form.save()
 
             messages.success(request, _("The lesson documentation has been saved."))
@@ -134,6 +135,7 @@ def lesson(
                 "alsijil.edit_lesson_personalnote", lesson_period
             ):
                 with reversion.create_revision():
+                    reversion.set_user(request.user)
                     instances = personal_note_formset.save()
 
                 # Iterate over personal notes and carry changed absences to following lessons
@@ -562,6 +564,7 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp
                             note.excused = True
                             note.excuse_type = excuse_type
                             with reversion.create_revision():
+                                reversion.set_user(request.user)
                                 note.save()
 
                         messages.success(request, _("The absences have been marked as excused."))
@@ -577,6 +580,7 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp
                             note.excused = True
                             note.excuse_type = excuse_type
                             with reversion.create_revision():
+                                reversion.set_user(request.user)
                                 note.save()
                             messages.success(request, _("The absence has been marked as excused."))
                     except (PersonalNote.DoesNotExist, ValueError):
@@ -712,6 +716,7 @@ class DeletePersonalNoteView(PermissionRequiredMixin, DetailView):
     def post(self, request, *args, **kwargs):
         note = self.get_object()
         with reversion.create_revision():
+            reversion.set_user(request.user)
             note.reset_values()
             note.save()
         messages.success(request, _("The personal note has been deleted."))