2016-04-27 100 views
0

私は巨大なデータセットをレンダリングするためにdjango-datatables-viewを使用します。 'flat_price'をフィルタリングしようとしています。これは、ユーザーが自分のDataTablesViewの入力フィールドdjango-datatables-viewでフィルタを作成する

に書い数以下にする必要があります。

class OrderListJson(BaseDatatableView): 
    model = Flat 
    columns = ['flat_house.adress', 'flat_price',] 
    order_columns = ['flat_house.adress', 'flat_price',] 
    max_display_length = 100 

    def filter_queryset(self, qs): 
     search = self.request.GET.get(u'search[value]', None) 
     if search: 
      qs = qs.filter(flat_price__lte=search) 

私はどのようにfilter_queryset作品を理解することはできません。私が遭遇したデータテーブルをページにロードしようとすると、AttributeError'NoneType object has no attribute count'

答えて

2

filter_querysetquerysetを返すべきです。

コードでfilter_queryset(self, qs)はデータを返しません。 ので、クエリセットとしてOrderListJson.get()使用NoneType

def filter_queryset(self, qs): 
    search = self.request.GET.get(u'search[value]', None) 
    if search: 
     qs = qs.filter(flat_price__lte=search) 
    return qs 
+0

ありがとう! htmlテンプレートの別のフィールドの 'BaseDatatableView'にカスタムフィルタを書くことは可能ですか? –

+0

@ mailman_73カスタムフィルタを作成する方法を理解しましたか? –

関連する問題