|
8 | 8 | from {{appname}}.powlib import merge_two_dicts |
9 | 9 | from {{appname}}.encoders import pow_json_serializer |
10 | 10 | from {{appname}}.decoders import pow_json_deserializer |
| 11 | +import {{appname}}.config as cfg |
11 | 12 |
|
12 | 13 | class ModelObject(): |
13 | 14 | """ |
@@ -42,6 +43,22 @@ def setup_instance_schema(self): |
42 | 43 | basic_schema) |
43 | 44 | print(" .. Schema is now: " + str(self.schema)) |
44 | 45 |
|
| 46 | + def setup_instance_values(self): |
| 47 | + """ fills the instance with defined default values""" |
| 48 | + for key in self.schema.keys(): |
| 49 | + if self.schema[key].get("default", None) != None: |
| 50 | + setattr(self,key,self.schema[key].get("default")) |
| 51 | + self.schema[key].pop("default", None) |
| 52 | + else: |
| 53 | + #print("no default for: " + str(self.schema[key])) |
| 54 | + #print("trying: " + str(cfg.database["default_values"][self.schema[key]["type"]])) |
| 55 | + try: |
| 56 | + #print("trying: " + config.database["default_values"][self.schema[key]["type"]]) |
| 57 | + setattr(self,key,cfg.database["default_values"][self.schema[key]["type"]]) |
| 58 | + except Exception as e: |
| 59 | + print(e.message) |
| 60 | + setattr(self, key, None) |
| 61 | + |
45 | 62 | def setup_from_format(self, *args, **kwargs): |
46 | 63 | """ |
47 | 64 | setup values from kwargs or from init_from_<format> if format="someformat" |
@@ -103,9 +120,9 @@ def validate(self): |
103 | 120 | #v = cerberus.Validator(self.schema) |
104 | 121 | v = Validator(self.schema) |
105 | 122 | if v.validate(self.to_dict(lazy=False)): |
106 | | - return True |
| 123 | + return (True, None) |
107 | 124 | else: |
108 | | - return v |
| 125 | + return (False,v) |
109 | 126 |
|
110 | 127 | def init_from_dict(self, d, ignore=True, simple_conversion=False): |
111 | 128 | """ |
|
0 commit comments