Try to use djangoql instead of django Q objects (choose the one that has the easier implementation and works more reliable)
I think we should actually limit the search to the fields that have been specified inside the tables DataTableColumn, in order to avoid confusion why certain results might be coming up...
get_queryset()
so that it can search as many types of fields as possible.