La entidad Tag, permitirá "etiquetar" diferentes recursos de la API. Quienes tengan acceso al tag, tendrán acceso a tal recurso. Requerirá la creación de:
[x] Tag Model:
id: int
name: str
tenant_id: intFK (*)
(*) Los tags se crean en relación a un tenant particular.
[x] EntityTag Model (tabla pivot):
entity_id: int
tag_id: int
La tabla pivot permite la existencia de la relación many to many entre Entity y Tag.
Schemas:
[x] Base:
name: str
[x] Create (hereda de Base)
[x] Read (hereda de Base):
id: int
[x] Update (hereda de Base)
[x] Delete:
id: int -> solo requiere el id para borrar
Routes:
[x] /tags/: devuelve todos los Tags - GET
[x] /tags/: crea un nuevo Tag - POST
[x] /tags/{tag_id}: devuelve los datos del Tag con id==tag_id - GET
[x] /tags/{tag_id}: actualiza los datos del Tag con id==tag_id - PATCH
[x] /tags/{tag_id}: elimina el Tag con id==tag_id - DELETE
La entidad
Tag
, permitirá "etiquetar" diferentes recursos de la API. Quienes tengan acceso al tag, tendrán acceso a tal recurso. Requerirá la creación de:int
str
int
FK (*)(*) Los tags se crean en relación a un tenant particular.
int
int
La tabla pivot permite la existencia de la relación many to many entre Entity y Tag.Schemas:
str
int
int
-> solo requiere el id para borrarRoutes:
/tags/
: devuelve todos los Tags - GET/tags/
: crea un nuevo Tag - POST/tags/{tag_id}
: devuelve los datos del Tag conid==tag_id
- GET/tags/{tag_id}
: actualiza los datos del Tag conid==tag_id
- PATCH/tags/{tag_id}
: elimina el Tag conid==tag_id
- DELETE