繁体   English   中英

如何解决discord.py中的“未定义名称'服务器'”错误

[英]How to fix “name 'server' is not defined” error in discord.py

我正在为我的不和谐服务器设置一个python机器人。 我正在尝试添加一项功能,当人们加入时,他们会输入-机器人会将他们分配给指定的角色

我已经尝试通过使用message.roles和server.roles分配我想要的角色,但是两者仍然会产生相同的错误。

BOT_PREFIX = ('-')

...

#ComputerScience
@client.command(pass_context = True)
async def Cs(member, *roles):
    role = discord.utils.get(server.roles, name="ComputerScience")
    await client.add_role(member, role)

当在聊天室中键入“ -Cs”时,它显示给他们计算机科学角色,但我得到:“忽略命令Cs中的异常... NameError:未定义名称'server'”

您正在传递调用上下文 ,但未在命令的函数签名中接受它。 您可以从该上下文中获取server

@client.command(pass_context = True)
async def Cs(ctx):
    role = discord.utils.get(ctx.message.server.roles, name="ComputerScience")
    await client.add_role(ctx.message.author, role)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM