ReciclA / modelsProyecto.py
YellowAlberto's picture
Upload 10 files
36f5aef verified
raw
history blame
1.17 kB
from sqlalchemy import Column, Integer, String, ForeignKey, Boolean, DateTime, Float
from sqlalchemy.orm import relationship
from databaseProyecto import Base
from datetime import datetime
from pydantic import BaseModel
class Usuario(Base):
__tablename__ = "usuarios"
id = Column(Integer, primary_key=True, index=True)
username = Column(String, unique=True, index=True)
password_hash = Column(String)
es_admin = Column(Boolean, default=False)
imagenes = relationship("Imagen", back_populates="usuario", cascade="all, delete-orphan")
class UsuarioSchema(BaseModel):
username: str
es_admin: bool = False
class Imagen(Base):
__tablename__ = "imagenes"
id = Column(Integer, primary_key=True, index=True)
name = Column(String, unique=True, index=True)
ruta = Column(String, unique=True)
fecha_subida = Column(DateTime, default=datetime.utcnow)
prediccion = Column(String, nullable=True)
confianza = Column(Float, nullable=True)
usuario_id = Column(Integer, ForeignKey("usuarios.id"), nullable=False)
usuario = relationship("Usuario", back_populates="imagenes")