Skip to content

admin

django_spire.ai.chat.admin

ChatAdmin

Bases: ModelAdmin

list_display = ('name', 'user', 'view_chat_messages_link', 'created_datetime') class-attribute instance-attribute

search_fields = ('id', 'name') class-attribute instance-attribute

ordering = ['-id'] class-attribute instance-attribute

Meta

ordering = ('id',) class-attribute instance-attribute

get_readonly_fields

Source code in django_spire/ai/chat/admin.py
def get_readonly_fields(self, request, obj=None) -> list[str]:
    return [field.name for field in self.model._meta.fields]
Source code in django_spire/ai/chat/admin.py
def view_chat_messages_link(self, obj):
    count = obj.messages.count()
    url = (
        reverse("admin:django_spire_ai_chat_chatmessage_changelist")
        + "?"
        + urlencode({"chat__id": f"{obj.id}"})
    )

    return format_html(f'<a href="{url}">{count} Messages</a>')

ChatMessageAdmin

Bases: ModelAdmin

list_display = ('content_body', 'chat', 'chat__user', 'is_processed', 'is_viewed', 'created_datetime') class-attribute instance-attribute

search_fields = ('id', 'content') class-attribute instance-attribute

ordering = ['-id'] class-attribute instance-attribute

content_body

Source code in django_spire/ai/chat/admin.py
def content_body(self, obj) -> str:
    return str(obj)

get_readonly_fields

Source code in django_spire/ai/chat/admin.py
def get_readonly_fields(self, request, obj=None) -> list[str]:
    return [field.name for field in self.model._meta.fields]