AttributeError: 'Select' object has no attribute 'user'
Résolubonjour,
j'ai besoin d'aide sur une erreur dans mon bot discord
voici la partie du code en question c'est pour faire des ticket et il me donne l'erreur ci - dessou
et je ne comprend pas pourquoi ca me parle de select dans l'erreur j'espére que vous pourrez m'aidez merci d'avance pour ceux qui prendrons le temps de m'aidez
@bot.command(name='ticket_menu')
async def menu(ctx):
info_dict = {}
try:
with open('configuration.conf', 'r') as f:
for line in f:
key, value = line.strip().split(':')
info_dict[key.strip()] = value.strip()
except FileNotFoundError:
await ctx.send("Le fichier de configuration est manquant.")
return
except Exception as e:
await ctx.send(f"Erreur de lecture du fichier de configuration: {e}")
return
if ctx.author.name in info_dict.get("membre", "") or any(role.name in info_dict.get("role", "").split() for role in ctx.author.roles):
await ctx.message.delete()
options = [
discord.SelectOption(label='Besoin d\'aide', description='Pour toute question ou problème, n\'hesiter pas à ouvrir un ticket', value='1', emoji='????'),
discord.SelectOption(label='Légal', description='Pour toute question ou problème concernant le légal', value='2', emoji='⚖️'),
discord.SelectOption(label='Illégal', description='Pour toute question ou problème concernant l\'illégal', value='3', emoji='????'),
discord.SelectOption(label='boutique', description='Pour toute question, problème ou Achat', value='4', emoji='????️'),
]
class SelectMenu(discord.ui.View):
@discord.ui.select(placeholder="Choisissez une option...", min_values=1, max_values=1, options=options)
async def select_callback(self, select: discord.ui.Select, interaction: discord.Interaction):
# Accéder à l'utilisateur via l'objet interaction
membre_name = interaction.user.name
# Répondre à l'interaction en fonction de la valeur sélectionnée
if select.values[0] == '1':
ticket = "aide"
await help_ticket(membre=membre_name)
elif select.values[0] == '2':
ticket = "légal"
await légal_ticket(membre=membre_name)
elif select.values[0] == '3':
ticket = "illégal"
await illégal_ticket(membre=membre_name)
elif select.values[0] == '4':
ticket = "boutique"
await boutique_ticket(membre=membre_name)
# Envoyer un message dans le canal de tickets
channel = bot.get_channel(1279046122522017843)
create_ticket = discord.Embed(title=membre_name, description=f"action : created \n raison: {ticket}", color=0x00FF00)
await channel.send(embed=create_ticket)
# Répondre à l'utilisateur pour indiquer que le ticket a été créé
await interaction.response.send_message("Votre ticket a été créé.", ephemeral=True)
embed = discord.Embed(title="Besoin d'aide", description="Besoin D'aide ? Ouvre un ticket selon ta demande et tu aura une réponse sous peu. Réagie selon ton besoin", color=0x3C0FF)
await ctx.send(embed=embed, view=SelectMenu())
else:
await ctx.message.delete()
msg = "**Vous n'avez pas la permission d'utiliser cette commande.**"
embed = discord.Embed(description=msg, color=0x3C0FF)
await ctx.channel.send(embed=embed)
2024-08-30 16:59:03 ERROR discord.ui.view Ignoring exception in view <SelectMenu timeout=180.0 children=1> for item <Select placeholder='Choisissez une option...' min_values=1 max_values=1 disabled=False options=[<SelectOption label="Besoin d'aide" value='1' description="Pour toute question ou problème, n'hesiter pas à ouvrir un ticket" emoji=<PartialEmoji animated=False name='????' id=None> default=False>, <SelectOption label='Légal' value='2' description='Pour toute question ou problème concernant le légal' emoji=<PartialEmoji animated=False name='⚖️' id=None> default=False>, <SelectOption label='Illégal' value='3' description="Pour toute question oou problème concernant l'illégal" emoji=<PartialEmoji animated=False name='????' id=None> default=False>, <SelectOption label='boutique' value='4' description='Pour toute question, problème ou Achat' emoji=<PartialEmoji animated=False name='????️' id=None> default=False>]>
Traceback (most recent call last):
File "c:\Users\gacha\AppData\Local\Programs\Python\Python312\Lib\site-packages\discord\ui\view.py", line 427, in _scheduled_task
await item.callback(interaction)
File "c:\Users\gacha\OneDrive\Documents\python\bot discord\bot sunland\bot_sunland.py", line 166, in select_callback
membre_name = interaction.user.name
^^^^^^^^^^^^^^^^
AttributeError: 'Select' object has no attribute 'user'