I would like to get from an emoji in the ctx.guild the corresponding ID, because this is not changeable and so it is easier to query it and not get in the way if suddenly the name is changed. But now the following problem:
I always get the following error when I try to make an entry in the database:
roles = rxner.find_one({"role1": role1.id}, {"emoji": emoji2}) # Search for existing entry about role + emoji
UnboundLocalError: local variable 'emoji2' referenced before assignment
My code to get the ID looks like this so far:
for em in ctx.guild.emojis: # loop over emojis
if str(em.id) == emoji:
emoji2 = em.id # get the ID
break # break
roles = rxner.find_one({"role1": role1.id}, {"emoji": emoji2}) # Search for existing entry about role + emoji
emojicheck = rxner.find_one({"emoji": emoji}) # Check which role + emoji belong together
roletofind = rxner.find_one({"role1": role1.id})
This must be where the error is somewhere, but I don't know exactly where.
I've looked at many posts here, even defined emoji globally, but that didn't help. I also tried to return the emoji but none of that works. As I set emoji: str as a required argument in the command that totally works but if the name is changed or something, I can't work with that anymore. Is there a solution how to get the ID in an easier way/fix the problem?
And yes, I looked at the following posts: