From 9cd703d29faa6a377f9bcf0918f8d714308fcde6 Mon Sep 17 00:00:00 2001 From: Jordweinstein Date: Mon, 25 Mar 2024 18:56:12 -0400 Subject: [PATCH] resource, resource_tag to/from models and programtype enum --- backend/entities/programtype_enum.py | 0 backend/entities/resource_entity.py | 30 ++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 backend/entities/programtype_enum.py diff --git a/backend/entities/programtype_enum.py b/backend/entities/programtype_enum.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/entities/resource_entity.py b/backend/entities/resource_entity.py index 4adea78..34c9ffb 100644 --- a/backend/entities/resource_entity.py +++ b/backend/entities/resource_entity.py @@ -33,6 +33,36 @@ class ResourceEntity(EntityBase): #relationships resourceTags: Mapped[list["ResourceTagEntity"]] = relationship(back_populates="resource", cascade="all,delete") + @classmethod + def from_model(cls, model: user_model) -> Self: + """ + Create a UserEntity from a User model. + + Args: + model (User): The model to create the entity from. + + Returns: + Self: The entity (not yet persisted). + """ + + return cls ( + id = model.id + created_at = model.created_at + name = model.name + summary = model.summary + link = model.link + program = model.program + ) + + def to_model(self) -> user_model: + return user_model ( + id = self.id + created_at = self.created_at + name = self.name + summary = self.summary + link = self.link + program = self.program + )