From 15737eac314b107e5da54138ce5c1321b3053784 Mon Sep 17 00:00:00 2001 From: JJ Date: Tue, 18 Sep 2018 20:13:14 -0300 Subject: [PATCH] Task: Add method to get all services by feature. --- featuren/models/feature.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/featuren/models/feature.py b/featuren/models/feature.py index 9242197..00e0221 100644 --- a/featuren/models/feature.py +++ b/featuren/models/feature.py @@ -1,5 +1,5 @@ from apistar import types, validators -from orator import Model +from orator import Model, accessor from models.features_service import FeaturesServices import logging @@ -33,7 +33,22 @@ class Feature(Model): __fillable__ = ["id", "version", "enabled", "deny"] + __appends__ = ["services"] + + @accessor + def services(self): + """ + Method to get all services by feature. + """ + services = FeaturesServices.all().where("feature_id", self.id) + services.transform(lambda item: item.service_id) + + return services.serialize() + def update_services(self, services): + """ + Method to update the list of available services for feature. + """ try: