Source code for aiida.storage.psql_dos.models.user

###########################################################################
# Copyright (c), The AiiDA team. All rights reserved.                     #
# This file is part of the AiiDA code.                                    #
#                                                                         #
# The code is hosted on GitHub at https://github.com/aiidateam/aiida-core #
# For further information on the license, see the LICENSE.txt file        #
# For further information please visit http://www.aiida.net               #
###########################################################################
"""Module to manage users for the SQLA backend."""

from sqlalchemy.schema import Column
from sqlalchemy.sql.schema import Index
from sqlalchemy.types import Integer, String

from aiida.storage.psql_dos.models.base import Base


[docs] class DbUser(Base): """Database model to store data for :py:class:`aiida.orm.User`. Every node that is created has a single user as its author. The user information consists of the most basic personal contact details. """ __tablename__ = 'db_dbuser' id = Column(Integer, primary_key=True) email = Column(String(254), nullable=False, unique=True) first_name = Column(String(254), default='', nullable=False) last_name = Column(String(254), default='', nullable=False) institution = Column(String(254), default='', nullable=False) __table_args__ = ( Index( 'ix_pat_db_dbuser_email', email, postgresql_using='btree', postgresql_ops={'email': 'varchar_pattern_ops'} ), )
[docs] def __str__(self): return self.email