Add message field to ObjectChange model

This commit is contained in:
Jeremy Stretch 2025-07-17 15:40:50 -04:00
parent cebc56e5cc
commit aaaf346e5f
6 changed files with 39 additions and 4 deletions

View File

@ -44,7 +44,8 @@ class ObjectChangeSerializer(BaseModelSerializer):
model = ObjectChange
fields = [
'id', 'url', 'display_url', 'display', 'time', 'user', 'user_name', 'request_id', 'action',
'changed_object_type', 'changed_object_id', 'changed_object', 'prechange_data', 'postchange_data',
'changed_object_type', 'changed_object_id', 'changed_object', 'message', 'prechange_data',
'postchange_data',
]
@extend_schema_field(serializers.JSONField(allow_null=True))

View File

@ -186,7 +186,8 @@ class ObjectChangeFilterSet(BaseFilterSet):
return queryset
return queryset.filter(
Q(user_name__icontains=value) |
Q(object_repr__icontains=value)
Q(object_repr__icontains=value) |
Q(message__icontains=value)
)

View File

@ -0,0 +1,16 @@
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('core', '0016_job_log_entries'),
]
operations = [
migrations.AddField(
model_name='objectchange',
name='message',
field=models.CharField(blank=True, editable=False),
),
]

View File

@ -82,6 +82,11 @@ class ObjectChange(models.Model):
max_length=200,
editable=False
)
message = models.CharField(
verbose_name=_('message'),
editable=False,
blank=True
)
prechange_data = models.JSONField(
verbose_name=_('pre-change data'),
editable=False,

View File

@ -41,6 +41,9 @@ class ObjectChangeTable(NetBoxTable):
template_code=OBJECTCHANGE_REQUEST_ID,
verbose_name=_('Request ID')
)
message = tables.Column(
verbose_name=_('Message'),
)
actions = columns.ActionsColumn(
actions=()
)
@ -49,5 +52,8 @@ class ObjectChangeTable(NetBoxTable):
model = ObjectChange
fields = (
'pk', 'time', 'user_name', 'full_name', 'action', 'changed_object_type', 'object_repr', 'request_id',
'actions',
'message', 'actions',
)
default_columns = (
'pk', 'time', 'user_name', 'action', 'changed_object_type', 'object_repr', 'message', 'actions',
)

View File

@ -64,10 +64,16 @@
{% endif %}
</td>
</tr>
<tr>
<th scope="row">{% trans "Message" %}</th>
<td>
{{ object.message|placeholder }}
</td>
</tr>
<tr>
<th scope="row">{% trans "Request ID" %}</th>
<td>
{{ object.request_id }}
<a href="{% url 'core:objectchange_list' %}?request_id={{ object.request_id }}">{{ object.request_id }}</a>
</td>
</tr>
</table>