VEYREN
@VEYREN
Длеаю бота в дискорде.

Как исправить 2 ошибки?

я делаю мини сброщик информации с команды на txt файле
и тут у меня есть 2 проблемы:
1. при перезагрузке бота вся статистика которая в .txt сбрасывается
2. выводится ошибка когда хочешь чекнуть инфо о участнике
member = ctx.member.id or ctx.author.id
AttributeError: 'Context' object has no attribute 'member'


@bot.command()
async def year(ctx, *, msg):
    bot.year[ctx.member.id] = [ctx.message.id, msg]

    async with aiofiles.open("year.txt", mode="r") as file:
        data = await file.readlines()

    async with aiofiles.open("year.txt", mode="w") as file:
        await file.write(f"{ctx.author.id} {ctx.message.id} {msg}\n")

        for line in data:
            if int(line.split(" ")[0]) != ctx.member.id:
                await file.write(line)

    await ctx.send(f"**Теперь в !check будет отображаться** {msg}")

@bot.command()
async def check(ctx, member: discord.Member = None):
    member = ctx.member.id or ctx.author.id
    try:
        ctx.message.id, msg = bot.year[member]
    except KeyError:
        await ctx.channel.send("Неизвестно")
    else:
        await ctx.send(f'{msg}')
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ответы на вопрос 1
mohovoy
@mohovoy
Практикуюсь в создании сайтов и ботов для дискорда
Насчет текста не знаю, а вот 2-ая ошибка понятна. Member не имеет параметр ctx. Если не ошибаюсь, должно выглядеть вот так:
member = member.id or ctx.author.id
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы