簡體   English   中英

discord 機器人在 python 中向用戶添加角色

[英]discord bot adding roles to a user in python

我開始制作一個機器人,為服務器中的所有用戶賦予一個角色。 當用戶在服務器中輸入特定消息時,我決定從賦予角色開始。 這是我正在使用的代碼:

if message.content == 'test':
                member = message.author
                role = discord.utils.get(member.guild.roles, name="test")
                await discord.Member.add_roles(member, role)

但我收到一個錯誤:

Ignoring exception in on_message
Traceback (most recent call last):
  File "E:\Program File\Python38-32\lib\site-packages\discord\client.py", line 312, in _run_event
    await coro(*args, **kwargs)
  File "E:\folder for all folders\python\program\bot.py", line 73, in on_message
    await discord.Member.add_roles(member, role)
  File "E:\Program File\Python38-32\lib\site-packages\discord\member.py", line 641, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
AttributeError: 'NoneType' object has no attribute 'id'

我對在這里做什么感到迷茫。

這是正確的代碼 -

if message.content == 'test':
                member = message.author
                role = discord.utils.get(message.guild.roles, name="test")
                await member.add_roles(role)

注意 -使服務器有一個名為test的角色。

如果這有效,請考慮接受這個作為答案 謝謝!

我不太擅長 Python 但是當你在文檔中看到 go 時,它告訴你 add_roles 有 3 個參數角色,原因和原子。 你不必把成員。 https://discordpy.readthedocs.io/en/latest/api.html#discord.Member.add_roles

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM