Skip to content

admin

django_spire.ai.sms.admin

SmsMessageInline

Bases: TabularInline

model = SmsMessage class-attribute instance-attribute

extra = 0 class-attribute instance-attribute

readonly_fields = ('created_datetime',) class-attribute instance-attribute

fields = ('body', 'is_inbound', 'is_processed', 'twilio_sid', 'created_datetime') class-attribute instance-attribute

SmsConversationAdmin

Bases: ModelAdmin

list_display = ('phone_number', 'user', 'last_message_datetime', 'view_sms_messages_link') class-attribute instance-attribute

search_fields = ('phone_number', 'user__username', 'user__email') class-attribute instance-attribute

readonly_fields = ('created_datetime',) class-attribute instance-attribute

inlines = [SmsMessageInline] class-attribute instance-attribute

Meta

ordering = ('phone_number',) class-attribute instance-attribute
Source code in django_spire/ai/sms/admin.py
def view_sms_messages_link(self, obj):
    count = obj.messages.count()
    url = (
            reverse("admin:django_spire_ai_sms_smsmessage_changelist")
            + "?"
            + urlencode({"sms_conversation__id": f"{obj.id}"})
    )
    return format_html('<a href="%s">%s Messages</a>' % (url, count))

SmsMessageAdmin

Bases: ModelAdmin

list_display = ('__str__', 'conversation', 'is_inbound', 'is_processed', 'created_datetime') class-attribute instance-attribute

list_filter = ('is_inbound', 'is_processed') class-attribute instance-attribute

search_fields = ('body', 'conversation__phone_number') class-attribute instance-attribute

readonly_fields = ('created_datetime',) class-attribute instance-attribute

Meta

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