Created basic backend structure, auth and CRUD endpoints.
This commit is contained in:
29
data/models.py
Normal file
29
data/models.py
Normal file
@@ -0,0 +1,29 @@
|
||||
# models.py
|
||||
from sqlalchemy import Column, Integer, String, Enum, ForeignKey
|
||||
from sqlalchemy.orm import relationship
|
||||
from data.db import Base
|
||||
from core.enums import ConnectionTypes, UserRole
|
||||
|
||||
class User(Base):
|
||||
__tablename__ = "users"
|
||||
|
||||
id = Column(Integer, primary_key=True, index=True)
|
||||
username = Column(String, unique=True, index=True, nullable=False)
|
||||
role = Column(Enum(UserRole), default=UserRole.user, nullable=False)
|
||||
api_key = Column(String, unique=True, nullable=False)
|
||||
|
||||
# repos = relationship("Connection", back_populates="owner")
|
||||
|
||||
class Connection(Base):
|
||||
__tablename__ = "connections"
|
||||
|
||||
id = Column(Integer, primary_key=True, index=True)
|
||||
db_name = Column(String, nullable=False)
|
||||
type = Column(Enum(ConnectionTypes), nullable=False)
|
||||
host = Column(String)
|
||||
port = Column(Integer)
|
||||
username = Column(String)
|
||||
password = Column(String)
|
||||
owner_id = Column(Integer, ForeignKey("users.id"))
|
||||
|
||||
# owner = relationship("User", back_populates="connections")
|
||||
Reference in New Issue
Block a user