Exemple #1
0
 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))
Exemple #2
0
    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
Exemple #3
0
 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))
Exemple #4
0
 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)
Exemple #5
0
 def extra_wrap_data(self):
     data = super(ListLimitMixin, self).extra_wrap_data()
     return merge(data, getattr(self, 'limit_extra_data', None))
Exemple #6
0
 def extra_wrap_data(self):
     data = super(FilterMixin, self).extra_wrap_data()
     return merge(data, getattr(self, 'filter_extra_data', None))