SQLAlchemy, alembic 및 postgres를 사용하면 열 생성 시간에 열을 설정하려고 할 때 마침내 얻을 수있는 필드가 테이블 자체 일 때의 필드입니다 행이 생성 된 시간 대신에 생성되었습니다.필드 기본 타임 스탬프가 행 생성 시간 대신 테이블 생성 시간으로 설정되었습니다.
모델 코드 : 기본값은 행이라고 내가 그렇게해야합니까
datetime | timestamp without time zone | not null default '2013-06-24 11:28:14.930524'::timestamp without time zone
:
sa.Column('datetime', sa.DateTime(), server_default='now()', nullable=False),
그리고 포스트 그레스의 열 :
datetime = sa.Column(sa.DateTime, nullable=False, server_default=func.now())
증류기가로 변환 창조 시간?
대신 올바른 대답을 제출하십시오.'server_default = func.now() 대신'server_default = func.now'를 사용해도 될까요? – Doobeh
@Doobeh : 나는 그것을 생각했다. 그리고 그것은 의도했던 것이 가치가 아닌 함수라는 점에서 의미가 있지만, 함수를 호출하는 것이 SQLAlchemy에서하는 방법이라고 생각된다. sqlalchemy.exc.ArgumentError : 'arg'유형이 ''또는 ''또는 ''중 하나가 될 것으로 예상됩니다. class 'sqlalchemy.sql.expression.TextClause'> ','got '' –
어둠 속에서 약간의 장면이 있었고,'default = datetime .now'라고 적혀 있습니다. 내가 답으로 남길 server_default를 사용하여 해결책을 발견했다. – Doobeh