Значение времени unix по умолчанию в объекте SQLAlchemy фляги - PullRequest
0 голосов
/ 22 октября 2019

Я пытаюсь сохранить временную метку Unix в момент создания объекта по умолчанию. Тем не менее, я всегда получаю одно и то же неправильное значение, когда объект хранится в базе данных. Вот мой класс:

from time import time

class Notification(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(128), index=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    timestamp = db.Column(db.Float, index=True, default=time)
    payload_json = db.Column(db.Text)

    def get_data(self):
        return json.loads(str(self.payload_json))

Если я запускаю колбу:

>>>from time import time
>>>time()
1571733064.7366862
>>>n=Notification(name='dummy')
db.session.add(n)
>>> db.session.commit()
>>> n.timestamp
1571730000.0

Любые идеи о том, что здесь происходит ?? !!! Я проверил в оболочке Mysql и SELECT UNIX_TIMESTAMP () дает правильное значение.

заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...