Module pygrocy.base
Expand source code
import json
def get_val(obj):
if hasattr(obj, "as_dict"):
as_attr = getattr(obj, "as_dict")
return as_attr()
return obj
class DataModel(object):
def toJson(self):
return json.dumps(self.as_dict())
def as_dict(self):
return {
k: get_val(getattr(self, k))
for k, v in self.__class__.__dict__.items()
if isinstance(v, property)
}
Functions
def get_val(obj)
-
Expand source code
def get_val(obj): if hasattr(obj, "as_dict"): as_attr = getattr(obj, "as_dict") return as_attr() return obj
Classes
class DataModel
-
Expand source code
class DataModel(object): def toJson(self): return json.dumps(self.as_dict()) def as_dict(self): return { k: get_val(getattr(self, k)) for k, v in self.__class__.__dict__.items() if isinstance(v, property) }
Subclasses
- Battery
- Chore
- MealPlanItem
- MealPlanSection
- RecipeItem
- Group
- Product
- ProductBarcode
- QuantityUnit
- ShoppingListProduct
- SystemConfig
- SystemInfo
- SystemTime
- Task
- TaskCategory
- User
Methods
def as_dict(self)
-
Expand source code
def as_dict(self): return { k: get_val(getattr(self, k)) for k, v in self.__class__.__dict__.items() if isinstance(v, property) }
def toJson(self)
-
Expand source code
def toJson(self): return json.dumps(self.as_dict())