示例#1
0
    def get_list_value(self, context, model, name):
        """
            Returns the value to be displayed in the list view

            :param context:
                :py:class:`jinja2.runtime.Context`
            :param model:
                Model instance
            :param name:
                Field name
        """
        column_fmt = self.column_formatters.get(name)
        if column_fmt is not None:
            return column_fmt(context, model, name)

        value = rec_getattr(model, name)

        choices_map = self._column_choices_map.get(name, {})
        if choices_map:
            return choices_map.get(value) or value

        type_fmt = self.column_type_formatters.get(type(value))
        if type_fmt is not None:
            value = type_fmt(value)

        return value
示例#2
0
    def get_list_value(self, context, model, name):
        """
            Returns the value to be displayed in the list view

            :param context:
                :py:class:`jinja2.runtime.Context`
            :param model:
                Model instance
            :param name:
                Field name
        """
        column_fmt = self.column_formatters.get(name)
        if column_fmt is not None:
            return column_fmt(context, model, name)

        value = rec_getattr(model, name)

        choices_map = self._column_choices_map.get(name, {})
        if choices_map:
            return choices_map.get(value) or value

        type_fmt = self.column_type_formatters.get(type(value))
        if type_fmt is not None:
            value = type_fmt(value)

        return value
示例#3
0
    def get_list_value(self, model, name):
        """
            Returns value to be displayed in list view

            :param model:
                Model instance
            :param name:
                Field name
        """
        if name in self.list_formatters:
            return self.list_formatters[name](model, name)

        return rec_getattr(model, name)
示例#4
0
    def get_list_value(self, context, model, name):
        """
            Returns value to be displayed in list view

            :param context:
                :py:class:`jinja2.runtime.Context`
            :param model:
                Model instance
            :param name:
                Field name
        """
        if name in self.list_formatters:
            return self.list_formatters[name](context, model, name)

        return rec_getattr(model, name)
示例#5
0
    def get_export_csv(self):
        self.export_columns = [column_name for column_name, _ in self._list_columns]
 
        io = StringIO()
        rows = csv.DictWriter(io, self.export_columns)
 
        data = self._get_data_for_export()
 
        rows.writeheader()
 
        for item in data:
            row = {column: unicode(rec_getattr(item, column)).encode('utf-8') for column in self.export_columns}
            rows.writerow(row)
 
        io.seek(0)
        return io.getvalue()
示例#6
0
 def _get_field_value(self, model, name):
     """
         Get unformatted field value from the model
     """
     return rec_getattr(model, name)
示例#7
0
 def _get_field_value(self, model, name):
     """
         Get unformatted field value from the model
     """
     return rec_getattr(model, name)