Условный подсчет общего количества взаимодействий с использованием flask -sqlalchemy - PullRequest
0 голосов
/ 26 марта 2020

Я пытаюсь вернуть общее количество идентификаторов пользователей, где идентификатор пользователя равен идентификатору пользователя, который в данный момент взаимодействует с моим приложением. Итак, чтобы дать вам больше контекста. Поэтому, чтобы дать вам больше контекста, я создаю чат-бота, который принимает входные данные (ключевое слово) и производит некоторые выходные данные, входные данные сохраняются в базе данных mysql, включая идентификатор пользователя, который является номером телефона человека.

Всякий раз, когда данный пользователь взаимодействует с чат-ботом, я хотел бы запросить мою базу данных и вернуть общее количество взаимодействий, с которыми человек взаимодействовал сегодня с чат-ботом. получать общее количество взаимодействий за данный день (если у меня есть данные только за один день).

Это то, что я написал

db = SQLAlchemy(app)
#creating mapping to database
class Users(db.Model):
    __tablename__ = 'users'
    cell_number = db.Column(db.Integer, primary_key = True)
    interaction_date = db.Column(db.DateTime, default = datetime.now(pytz.timezone('Africa/Harare')), nullable=False)
    request_key = db.Column(db.String(64000))
    counter = db.Column(db.Integer)
...  .... .... .....
user_object = Users()
        user_object.cell_number = int(cleaned_number)
...
    total = Users.query.filter(user_object.cell_number == cleaned_number).filter(user_object.interaction_date.strftime('%d-%m-%y') == current).count()

cleaned_number в этом контексте возвращает номер телефона человек, взаимодействующий с чатботом (я проверял это несколько раз).

Это образец моей базы данных (с явно измененными числами):

cell_number  interaction_date      request_key 
123          2020-03-25 13:51:44    xv
123          2020-03-25 13:51:50    cv
121          2020-03-24 22:22:30    dfdf
...