File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1010import discord
1111from asyncstdlib .builtins import any as asyncany
1212from discord .ui import View
13+ from django .core .exceptions import MultipleObjectsReturned , ObjectDoesNotExist
1314
1415from config import settings
1516from db .core .models import DiscordMemberStrikes
@@ -896,15 +897,30 @@ async def get_strikes( # type: ignore[misc]
896897 await self .command_send_error (ctx , message = member_id_not_integer_error .args [0 ])
897898 return
898899
899- member_strikes = [
900- strike
901- async for strike in await DiscordMemberStrikes .objects .afilter (
902- discord_id = str (strike_member .id ),
900+ logger .debug (DiscordMemberStrikes .objects )
901+
902+ try :
903+ member_strike_object : DiscordMemberStrikes = (
904+ await DiscordMemberStrikes .objects .select_related ().aget (
905+ discord_id = str (strike_member .id ),
906+ )
903907 )
904- ]
908+ except ObjectDoesNotExist :
909+ await ctx .respond (f"User { strike_member .mention } does not have any strikes." )
910+ return
911+ except MultipleObjectsReturned :
912+ await self .command_send_error (
913+ ctx = ctx ,
914+ message = (
915+ "Multiple objects returned when trying to get strikes for user! "
916+ "This should never happen!"
917+ ),
918+ )
919+ return
905920
906921 await ctx .respond (
907- f"User { strike_member .mention } has the following strikes: { member_strikes } "
922+ f"User { strike_member .mention } has the following strikes: "
923+ f"{ member_strike_object .strikes } "
908924 )
909925
910926
You can’t perform that action at this time.
0 commit comments