def input_facet(self, **kwargs): facet = self.get_setting('facet') if facet is not undefined: return facet model = self.get_model() if model: return model_facet(model, **merge(self.get_setting('model_facet'), kwargs))
def prepare_output(self, data): """Orgnize the data before it is sent for buidling response. Args: data: The data returned by view method Returns: data: serializable object status: http status code """ status = self.get_success_code() if self.get_setting('wrap_result'): data = merge({'result': data}, self.extra_wrap_data()) return data, status
def data_from_model(self, obj, model_data_opts=None, **cast_opts): return model_to_dict(obj, **merge(self.get_setting('model_data'), model_data_opts))
def data_from_input(self, model_facet_opts=None, **cast_opts): data = self.request.JSON or self.request.POST facet = self.input_facet(**merge({'deserialize': not self.request.JSON}, model_facet_opts)) if facet: data = self.cast(facet, data, view=self, **cast_opts) return self.input_clean(data)
def extra_wrap_data(self): data = super(ListLimitMixin, self).extra_wrap_data() return merge(data, getattr(self, 'limit_extra_data', None))
def extra_wrap_data(self): data = super(FilterMixin, self).extra_wrap_data() return merge(data, getattr(self, 'filter_extra_data', None))