from sqlalchemy import create_engine
engine = create_engine(‘firebird+fdb://SYSDBA:password@1.1.1.1:3050/C:/Program Files/F-Soft/DATA4/VLD.GDB?charset=win1251’, echo=True)
«echo=True» — для логгирования sql запросов при отладке, когда все заработало можно поставить в False
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
app = Flask(__name__)
db = SQLAlchemy(app)
class Post(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(140))
slug = db.Column(db.String(140), unique=True)
body = db.Column(db.Text)
created = db.Column(db.DateTime, default=datetime.now())
def __init__(self, *args, **kwargs):
super(Post, self).__init__(*args, **kwargs)
self.generate_slug()
# представление через консоль
def __repr__(self):
return '{}'.format(self.title)
posts = Post.query.all()
post = posts[0]
def main():
print(post)
if __name__ == '__main__':
main()
Вот примитивная модель поста из документации(упрощенная)
from datetime import datetime
class Post(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(80), nullable=False)
body = db.Column(db.Text, nullable=False)
pub_date = db.Column(db.DateTime, nullable=False,
default=datetime.utcnow)
def __repr__(self):
return '' % self.title
и затем команду:
Когда одновременно описана и реакция на сообщения, и команда(ы), то бот реагирует только на сообщения. В данном примере я скинул команду "info" и если я введу боту данное слово, то он его будет обрабатывать в async def on_message(message). Реакций на команды нету.