Advertisement
Andrexxelles

Untitled

Oct 2nd, 2020 (edited)
995
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.21 KB | None | 0 0
  1. from tortoise import Tortoise, fields
  2. from tortoise.models import Model
  3. from vkbottle import Bot
  4. from vkbottle import Message
  5.  
  6. bot = Bot("25015660b4d5f716e63b1cfc5395d5a59b60652cb880054a256b517e8edc23cc20c497bea709f3f651b82")
  7.  
  8.  
  9. class Chats(Model):
  10.     chat_id = fields.IntField(pk=True)
  11.  
  12.     class Meta:
  13.         table = "Chats"
  14.  
  15.  
  16. class Users(Model):
  17.     fk_chat_id = fields.relational.ForeignKeyField('models.Chats', related_name='fk_chat', to_field='chat_id')
  18.     uid = fields.IntField()
  19.  
  20.  
  21. async def init():
  22.     await Tortoise.init(
  23.         db_url='sqlite://db.sqlite3',
  24.         modules={'models': ["__main__"]}
  25.     )
  26.     await Tortoise.generate_schemas()
  27.  
  28.  
  29. async def create(chat_id, uid):
  30.     await Chats.create(chat_id=chat_id)
  31.     await Users.create(fk_chat_id=chat_id, uid=uid)
  32.  
  33.  
  34. @bot.on.message_handler(text=['db create'])
  35. async def wrapper(answer: Message):
  36.     # try:
  37.     await create(chat_id=answer.peer_id, uid=answer.from_id)
  38.     return 'Database was created!'
  39.     # except:
  40.     # return 'Database wasn\'t created :C'
  41.  
  42.  
  43. @bot.on.message_handler(text=['db show'])
  44. async def wrapper(answer: Message):
  45.     return await Chats.all().values('id')
  46.  
  47.  
  48.  
  49. bot.run_polling(on_startup=init)
  50.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement