'int' object has no attribute 'guild' discord.py

Хочу сделать команду, которая будет выдавать и забирать роли. Но выдаёт такую ошибку:

CommandInvokeError: Command raised an exception: AttributeError: 'int' object has no attribute 'guild'

Код:

@bot.command()
async def leave(ctx):
  user = ctx.author.id
  ctx.channel.purge(limit=1)
  role = ds.utils.get(user.guild.roles, name='Ожидание')
  role2 = ds.utils.get(user.guild.roles, name='Вне игры')
  user.add_roles(role2)
  user.remove_roles(role)
  config.players = config.players - 1

Кто подскажет, где ошибка?


Ответы (2 шт):

Автор решения: RAINGM
@bot.command()
async def leave(ctx):
  user = ctx.author
  ctx.channel.purge(limit=1)
  role = ds.utils.get(user.guild.roles, name='Ожидание')
  role2 = ds.utils.get(user.guild.roles, name='Вне игры')
  user.add_roles(role2)
  user.remove_roles(role)
  config.players = config.players - 1
→ Ссылка
Автор решения: guyfcc
@bot.command()
async def leave(ctx):
  user = ctx.author
  await ctx.channel.purge(limit=1)
  role = ds.utils.get(user.guild.roles, name='Ожидание')
  role2 = ds.utils.get(user.guild.roles, name='Вне игры')
  await user.add_roles(role2)
  await user.remove_roles(role)
  config.players = config.players - 1

ctx.author.id - это число

https://discordpy.readthedocs.io/en/stable/api.html?highlight=member#discord.Member

→ Ссылка