我试图设置特定通道(之前定义的)的权限,但它不起作用。我希望通道是一个特定的通道而不是基于await ctx.channel.set_permissions(role, send_messages=False)
的通道这是我用来设置不起作用的权限的行。Channel是特定通道的ID:
await channel.set_permissions(role, overwrite = None, send_messages=False)
您需要在尝试调用set_permissions
之前获得具有id的通道对象。此外,您不能将overwrite
与其他权限kwargs混合使用。
channel
为通道id:
channel_obj = bot.get_channel(channel)
await channel_obj.set_permissions(role, send_messages=False)
代替overwrite=None, send_messages=False
,你可以这样做:
overwrite = discord.PermissionOverwrite()
overwrite.send_messages = False
await channel_obj.set_permissions(role, overwrite=overwrite)