diff --git a/exporto.py b/exporto.py index 112c1d9..0164bfe 100644 --- a/exporto.py +++ b/exporto.py @@ -2,33 +2,13 @@ from sqlalchemy import create_engine, Integer, String, BIGINT, Column, DateTime from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker from sqlalchemy import select, update - +from sql_db_data import * from flask import Flask app = Flask(__name__) - -engine = create_engine('postgresql+psycopg2://postgres:postgres@postgres.vdk2ch.ru:5432/jack_bot', echo=True) -Session = sessionmaker(bind=engine) - - -Base = declarative_base() - - - -class user(Base): - __tablename__ = 'users' - - id = Column(Integer, primary_key=True) - user_id = Column(Integer) - user_fullname = Column(String) - dick_size = (Column(Integer)) - datetimes = (Column(DateTime)) - chat_id = Column(BIGINT) - - def get_top_dicks(): @@ -36,7 +16,7 @@ def get_top_dicks(): session = Session() - top = session.query(user.user_fullname, user.dick_size, user.user_id, user.chat_id).order_by(user.dick_size.desc()).all() + top = session.query(User.user_fullname, UserDick.dick_size, User.user_id, UserDick.chat_id).join(UserDick).order_by(UserDick.dick_size.desc()).all() session.close() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..50f2c56 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,6 @@ +aiogram +sqdb +sqlalchemy +graypy +flask +psycopg2 \ No newline at end of file diff --git a/sql_db_data.py b/sql_db_data.py new file mode 100644 index 0000000..664c946 --- /dev/null +++ b/sql_db_data.py @@ -0,0 +1,73 @@ +from sqlalchemy import create_engine, MetaData, Table, Integer, String, BIGINT, \ + Column, DateTime, ForeignKey, Numeric +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.orm import sessionmaker, relationship +from sqlalchemy import select, update + +engine = create_engine('postgresql+psycopg2://postgres:postgres@postgres.vdk2ch.ru:5432/jack_bot', echo=True) +Session = sessionmaker(bind=engine) +session = Session() + +Base = declarative_base() + + +class User(Base): + __tablename__ = 'users' + + id = Column(Integer, primary_key=True) + user_id = Column(Integer) + date_created = (Column(DateTime)) + user_fullname = Column(String) + date_updated = (Column(DateTime)) + dick_requests = relationship("DickRequest", back_populates="user") + user_dicks = relationship("UserDick", back_populates="user") + + +class UserDick(Base): + __tablename__ = 'user_dicks' + + id = Column(Integer, primary_key=True) + user_id = Column(Integer, ForeignKey("users.user_id")) + dick_size = (Column(Integer)) + chat_id = Column(BIGINT) + user = relationship("User", back_populates="user_dicks") + + +class DickRequest(Base): + __tablename__ = 'dick_requests' + id = Column(Integer, primary_key=True) + size_change = Column(Integer) + user_id = Column(Integer, ForeignKey("users.user_id")) + user = relationship("User", back_populates="dick_requests") + date_changed = (Column(DateTime)) + + +session.close() +engine.dispose() + +# top = session.query(user.user_fullname, user.dick_size) +# .order_by(user.dick_size.desc()) +# .filter(user.chat_id == user.chat_id).limit(10).all() +# print(top) + + +# Base.metadata.create_all(engine) + +# int_table = user(user_id = 12345678, user_fullname = 'test', dick_size = 10) #импортирую юзер из sqdb +# session.add(int_table) +# session.commit() +# select user_id, name from employees limit 10 + +# def adding(): + +# session.add() +# session.commit() + + + + + + + + +