user_id = Column(Integer, ForeignKey(users_schema + '.user.id'), nullable=False, index=True) user = relationship(User, primaryjoin=user_id == User.id, viewonly=True) is_creation = Column(Boolean, default=True, nullable=False) written_at = Column(DateTime(timezone=True), default=func.now(), nullable=False, index=True) schema_association = SQLAlchemySchemaNode( Association, # whitelisted attributes includes=['parent_document_id', 'child_document_id'], overrides={}) def exists_already(link): """ Checks if the given association exists already. For example, for two given documents D1 and D2, it checks if there is no association D1 -> D2 or D2 -> D1. """ associations_exists = DBSession.query(Association). \ filter(or_( and_( Association.parent_document_id == link.parent_document_id, Association.child_document_id == link.child_document_id ),
'document_id', name='uq_documents_geometries_archives_document_id_version_lang'), Base.__table_args__) schema_attributes = [ 'document_id', 'version', 'locales', 'geometry', 'quality' ] schema_locale_attributes = [ 'version', 'lang', 'title', 'description', 'summary' ] schema_document_locale = SQLAlchemySchemaNode( DocumentLocale, # whitelisted attributes includes=schema_locale_attributes, overrides={'version': { 'missing': None }}) geometry_schema_overrides = { # whitelisted attributes 'includes': ['version', 'geom', 'geom_detail', 'has_geom_detail'], 'overrides': { 'version': { 'missing': None } } }