def _set_default_value(self, store, param_name): """Sets the default initial value for a param in the database If the param is not present in the ParameterData table, it will be created with the default initial value. """ if self._values.get(param_name, None) is not None: return detail = self.get_detail_by_name(param_name) value = detail.initial if value is None: return if detail.type is bool: value = int(value) if value is not None: value = unicode(value) data = ParameterData(store=store, field_name=param_name, field_value=value, is_editable=detail.is_editable) self._values[param_name] = data.field_value return data.field_value
def _get_model(self, store, detail): model = store.find(ParameterData, field_name=detail.key).one() if not model: value = sysparam.get(detail.key) if detail.type is bool: value = int(value) if value is not None: value = unicode(value) model = ParameterData(store=store, field_name=detail.key, field_value=value) return model
def _set_schema(self, field_name, field_value, is_editable=True): if field_value is not None: field_value = unicode(field_value) data = self.store.find(ParameterData, field_name=field_name).one() if data is None: store = new_store() ParameterData(store=store, field_name=field_name, field_value=field_value, is_editable=is_editable) store.commit(close=True) else: data.field_value = field_value
def _set_default_value(self, store, detail, value): if value is None: return if detail.type is bool: value = int(value) if value is not None: value = unicode(value) param_name = detail.key data = self._values.get(param_name) if data is None: data = ParameterData(store=store, field_name=param_name, field_value=value, is_editable=True) self._values[param_name] = data.field_value data.field_value = value