База данные на sqlalchemy
Есть 2 таблицы которые будут содержать данные о юзере, а вторая данные о посте. благодаря get_user_model, данные о пользователе не дублируются. Цель, написать код который будет позволять добавить в таблицу в нужную графу и нужную строку данные, а не просто дублировать их.
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config.update(
DEBUG=True,
SQLALCHEMY_DATABASE_URI='sqlite:///telegram.db',
SQLALCHEMY_TRACK_MODIFICATIONS=False
)
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(255), nullable=True)
status = db.Column(db.Integer, nullable=True)
posts = db.relationship('Post', backref='author', lazy='dynamic')
class Post(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
file_id = db.Column(db.String(255), nullable=True)
caption = db.Column(db.String(255), nullable=True)
inline = db.Column(db.String(255), nullable=True)
btnUrl = db.Column(db.String(255), nullable=True)
user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
def get_user_model(tel_id):
global db
model = User.query.filter_by(id = tel_id).first()
if model == None:
model = User(id = tel_id)
db.session.add(model)
db.session.commit()
return (model)