SQL Alchemy atualização tempo não trabalhar na revisão Alambique

votos
0

Eu tenho uma coluna em uma revisão alambique para update_time para mostrar quando a coluna é atualizada.

Atualmente eu tentei:

        sa.Column('update_time', sa.dialects.mysql.DATETIME(fsp=3), 
        nullable=False, server_default=str(datetime.utcnow()), 
        onupdate=str(datetime.utcnow()), server_onupdate=str(datetime.utcnow()))

Eu também tentei:

        sa.Column('test_time', sa.DateTime(), server_default=sa.func.now(),
        server_onupdate=sa.func.now(), onupdate=sa.func.now())

Quando o banco de dados é construído é obtém a hora UtcNow () bem como um DateTime.

No entanto, quando eu atualizar a coluna via linha de comando no mysql, a coluna permanece o mesmo timestamp.

Como faço para obter o timestamp para atualizar?

Publicado 19/09/2018 em 13:20
fonte usuário
Em outras línguas...                            


1 respostas

votos
0

Tenho que trabalhar com:

        from sqlalchemy import text
        from sqlalchemy.dialects.mysql import TIMESTAMP

        sa.Column('update_time', TIMESTAMP(), nullable=False, 
        server_default=text('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP')),
Respondeu 19/09/2018 em 15:58
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more