Fixed manuall logging when model is not registered

This commit is contained in:
Hasan Ramezani 2024-04-10 23:40:28 +02:00
parent a93d9ef665
commit b46e092dbb
No known key found for this signature in database
GPG key ID: 36462AEA74DF3539
3 changed files with 19 additions and 0 deletions

View file

@ -4,6 +4,7 @@
#### 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))
## 3.0.0-beta.4 (2024-01-02)

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):