def do_filter(qs, qdata, quick_query_fields=[], int_quick_query_fields=[]):
    """
    auto filter queryset by dict.

    qs: queryset need to filter.
    qdata:
    quick_query_fields:
    int_quick_query_fields:
    """
    try:
        qs = qs.filter(
            __gen_quick_query_params(
                qdata.get('q_quick_search_kw'), quick_query_fields,
                int_quick_query_fields)
        )
        q, kw_query_params = __gen_query_params(qdata)
        qs = qs.filter(q, **kw_query_params)
    except:
        import traceback
        traceback.print_exc()
    return qs