backend + telegram: добавлена обработка ошибок при регистрации

This commit is contained in:
2022-11-18 01:31:17 +03:00
parent a6fba9e3a0
commit 02685d28df
3 changed files with 31 additions and 12 deletions

View File

@@ -21,14 +21,20 @@ def registration():
last_name = data.get("last_name") last_name = data.get("last_name")
username = data.get("username") username = data.get("username")
new_user = User( existed_user = User.query.filter_by(tg_id=tg_id).first()
tg_id=tg_id,
first_name=first_name,
last_name=last_name,
username=username,
)
db.session.add(new_user) if not existed_user:
db.session.commit() new_user = User(
tg_id=tg_id,
first_name=first_name,
last_name=last_name,
username=username,
)
return "Nice!", 200 db.session.add(new_user)
db.session.commit()
return {"created": True, "id": new_user.id}
else:
return {"created": False, "id": existed_user.id}

View File

@@ -9,7 +9,13 @@ class Backend:
base_url = config_data["backend_settings"]["base_url"] base_url = config_data["backend_settings"]["base_url"]
def post(self, relative_url, data): def post(self, relative_url, data):
requests.post(f"{self.base_url}{relative_url}", json=data) try:
response = requests.post(
f"{self.base_url}{relative_url}", json=data
)
return {"error": None, "response": response}
except Exception as err:
return {"error": err}
backend = Backend() backend = Backend()

View File

@@ -22,8 +22,15 @@ async def start(message):
"last_name": tg_user.last_name, "last_name": tg_user.last_name,
"username": tg_user.username, "username": tg_user.username,
} }
backend.post("/registration", ts_user) result = backend.post("/registration", ts_user)
await message.reply("Nice!") if not result["error"] and result["response"].ok:
data = json.loads(result["response"].text)
if data["created"]:
await message.reply("Добро пожаловать!")
else:
await message.reply("Добро пожаловать! Снова")
else:
await message.reply("Упс! Что-то пошло не так")
if __name__ == "__main__": if __name__ == "__main__":