Datatable named column - data-data="advisor.username"

Issue #81 new
Nikolay Smirnov created an issue

Hi Maciej,

Thanks for django-datatables-view, it is awesome feature!

I have some issue with returned object.

So, i have

<th data-data="advisor.username">{% trans "Advisor" %}</th>

My view always returns:

"advisor.username": "My name"

but following datatable docs must be a object

"advisor": {"username": "My name"}

  • . - Dotted Javascript notation. Just as you use a . in Javascript to read from nested objects, so to can the options specified in data. For example: browser.version or browser.name. If your object parameter name contains a period, use \\ to escape it - i.e. first\\.name.

Or i am something do wrong?

Thanks

Comments (3)

  1. Nikolay Smirnov reporter

    Maybe can be used in project django-datatables-view

    def prepare_results(self, qs):
        data = []
        for item in qs:
            for col_data in self.columns_data:
                value = self.render_column(item, col_data['data'])
                # Deep object value
                for part in reversed(col_data['data'].split('.')):
                    value = { part: value }
                row.update(value)
            # row = {col_data['data']: self.render_column(item, col_data['data']) for col_data in self.columns_data}
            data.append(row)
        return data
    

  2. Log in to comment