В поле, связанном с представлением таблиц данных Django, неверный поиск: istartswith

#javascript #python #django #django-datatable

Вопрос:

Я пытаюсь отобразить таблицу данных с помощью представления таблиц данных django, но она всегда выдает эту ошибку, когда я пытаюсь выполнить поиск, django.core.exceptions.FieldError: Related Field got invalid lookup: istartswith . Модель, которую я использую, имеет внешний ключ к другой модели. Я перепробовал все решения, которые нашел. Они не работают!!

Я пытался https://datatables.net/forums/discussion/55916/searching-on-columns-with-data-null ,

https://bitbucket.org/pigletto/django-datatables-view/issues/5/order_columns-doesnt-work-with-foreign и

https://github.com/izimobil/django-rest-framework-datatables/issues/58

язык JavaScript

 var customerTable = $(DOMstrings.customerTable ).DataTable({        
      "processing": true,        
      "searching": true,
      'pageLength': 30,
      //"lengthMenu": [ 50, 100, 150, 200 ],
      //"colReorder": true,
      "scrollY": 500,
      //"scrollX": 1500,
      //"deferRender": true,
      "responsive": true, 
      "ordering": true, 
      "paging": true,   
      "lengthChange": true,  

      "ajax": {
          "url": customerListURL,                
      },
      "serverSide": true,

      "columns": [        
          { "fields": "id" },                   
          { "fields": "customer.first_name"},
          { "fields": "amount" },
          { "fields": "date_time" },                  
          //{ "fields": "picture" },                               
          //{ "searchable": "false" },                                   
      ],
      dom: 'Bfrtip',
      buttons: [
          'colvis',            
          'pageLength',
      ],        
  });   
 

число просмотров

 class CustomerListJsonView(LoginRequiredMixin, BaseDatatableView):
    """This is the view used by Datatables.net to render the Datatable"""
    # The model we're going to show
    model = Customer

    columns = ['id', 'customer', 'amount', 'date_time']   

    # This defines columns that will be used in sorting
    order_columns = ['id', 'customer', 'amount', 'date_time']
    max_display_length = 100
    
    def render_column(self, row, column):
        # We want to render phone number as a custom column        
        if column == 'date_time':                                    
            return row.date_time.strftime('%b %d %Y %I:%M %p') 
        else:            
            return super(CustomerListJsonView, self).render_column(row, column)  
 

Комментарии:

1. Как вы используете istartswith это ?

2. Я им не пользуюсь. Таблицы данных делают это автоматически