Fixed manuall logging when model is not registered (#627)

* Fixed manuall logging when model is not registered

* Move change log
This commit is contained in:
Hasan Ramezani 2024-04-12 10:14:42 +02:00 committed by GitHub
parent a93d9ef665
commit 7b035943c7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 23 additions and 1 deletions

View file

@ -4,11 +4,15 @@
#### Fixes
- Fixed logging problem related to django translation before logging ([#624](https://github.com/jazzband/django-auditlog/pull/624))
- Fixed manuall logging when model is not registered ([#627](https://github.com/jazzband/django-auditlog/pull/627))
#### Improvements
- feat: Excluding ip address when `AUDITLOG_DISABLE_REMOTE_ADDR` is set to True ([#620](https://github.com/jazzband/django-auditlog/pull/620))
## 3.0.0-beta.4 (2024-01-02)
#### Improvements
- feat: Excluding ip address when `AUDITLOG_DISABLE_REMOTE_ADDR` is set to True ([#620](https://github.com/jazzband/django-auditlog/pull/620))
- feat: If any receiver returns False, no logging will be made. This can be useful if logging should be conditionally enabled / disabled ([#590](https://github.com/jazzband/django-auditlog/pull/590))
- Django: Confirm Django 5.0 support ([#598](https://github.com/jazzband/django-auditlog/pull/598))
- Django: Drop Django 4.1 support ([#598](https://github.com/jazzband/django-auditlog/pull/598))

View file

@ -224,6 +224,9 @@ class LogEntryManager(models.Manager):
def _get_serialized_data_or_none(self, instance):
from auditlog.registry import auditlog
if not auditlog.contains(instance.__class__):
return None
opts = auditlog.get_serialize_options(instance.__class__)
if not opts["serialize_data"]:
return None

View file

@ -1112,6 +1112,21 @@ class UnregisterTest(TestCase):
# Check for log entries
self.assertEqual(LogEntry.objects.count(), 0, msg="There are no log entries")
def test_manual_logging(self):
obj = self.obj
obj.boolean = True
obj.save()
LogEntry.objects.log_create(
instance=obj,
action=LogEntry.Action.UPDATE,
changes="",
)
self.assertEqual(
obj.history.filter(action=LogEntry.Action.UPDATE).count(),
1,
msg="There is one log entry for 'UPDATE'",
)
class RegisterModelSettingsTest(TestCase):
def setUp(self):