Задать вопрос
@nevergodmode

TypeError: __init__() takes 1 positional argument but 2 were given у меня проект на aiogram плюс sqlalhemy ,но я совсем недавно начал?

from app.database.models import async_session
from app.database.models import User, Category, Item
from sqlalchemy import select

async def set_user(tg_id):
async with async_session() as session:
user = await session.scalar(select(User).where(User.tg_id == tg_id))

if not user:
session.add(User(tg_id == tg_id))
await session.commit()
это чтоб добавлялось в дб

import asyncio
import aiogram

from aiogram import Bot, Router, F
from aiogram.types import Message
from aiogram.filters import CommandStart, Command

import app.keyboard as kb
import app.database.requests as rq

rt = Router()

@rt.message(CommandStart())
async def start(message:Message):
await rq.set_user(message.from_user.id)
await message.reply('Привет!')
await message.answer("Вот Главное меню:", reply_markup=kb.main)


@rt.message(Command('help'))
async def help(message: Message):
await message.reply('Все вопросы ->:')

@rt.message(F.text == 'Каталог ')
async def catlog(message:Message):
await message.answer('Вот наш каталог:', reply_markup=kb.catalog)

@rt.message(F.text == 'Вернуться на главную страницу')
async def catlog(message:Message):
await message.answer('Главное меню:', reply_markup=kb.main)

я уже задавал этот вопрос и по прошу найти именно ошибку и не говорить мне учиться
  • Вопрос задан
  • 32 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Ошибка подчёркнута же в бэктрейсе, чего её искать? Что по вашему делает строка User(tg_id == tg_id)?
Ответ написан
Lord_of_Rings
@Lord_of_Rings
Северный странник. Злой, но добрый
и не говорить мне учиться
Именно это я и скажу. Мы должны все разжевать и вам в рот положить?
но я совсем недавно начал
Это не даёт вам права не учиться
прошу найти именно ошибку
Вот именно поэтому, я и посылаю вас учиться.
я уже задавал этот вопрос
А это чревато его удалением или даже баном.

Ну и как я вам уже говорил 12 дней назад
Учиться, учиться и ещё раз учиться. А не ботов писать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы