@@ -0,0 +1,19 @@ +# Generated by Django 5.0.11 on 2025-09-23 10:18 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('msgs', '0007_messageerror_stacktrace'), + ] + + operations = [ + migrations.AlterField( + model_name='messageerror', + name='message', + field=models.OneToOneField(on_delete=django.db.models.deletion.DO_NOTHING, related_name='message_error', to='msgs.message', verbose_name='Message'), + ), + ] @@ -6,7 +6,7 @@ from .message import Message class MessageError(BaseModel): - message = models.ForeignKey(Message, on_delete=models.DO_NOTHING, verbose_name=_('Message'), related_name='message') + message = models.OneToOneField(Message, on_delete=models.DO_NOTHING, verbose_name=_('Message'), related_name='message_error') detail = models.TextField(verbose_name=_('Detail')) stacktrace = models.TextField(null=True, blank=True, verbose_name='Stack Trace') @@ -28,5 +28,9 @@ class MessageAdmin(admin.ModelAdmin): @admin.register(MessageError) class MessageErrorAdmin(admin.ModelAdmin): readonly_fields = ('detail', 'stacktrace') - list_display = ('message', 'detail') - list_filter = ('detail',) + list_display = ('message', 'short_detail') + search_fields = ('detail', 'stacktrace',) + + @admin.display(description='Подробности') + def short_detail(self, obj: MessageError): + return obj.detail[:50]