예제 #1
0
파일: __init__.py 프로젝트: bryanriosb/PERP
def filtered_list_detail(request,
                         model_or_queryset,
                         fields=[],
                         exclude=[],
                         page=0,
                         paginate_by=10,
                         **kwargs):
    """Returns a filtered list of given objects.
    """
    field_names, filter_fields, object_list = filter_objects(request,
                                                             model_or_queryset,
                                                             fields=fields,
                                                             exclude=exclude)

    extra_context = kwargs.pop('extra_context', {})
    extra_context.update({
        'field_names': field_names,
        'filter_fields': filter_fields,
    })

    return list_detail.object_list(request,
                                   queryset=object_list,
                                   paginate_by=paginate_by,
                                   page=page,
                                   extra_context=extra_context,
                                   **kwargs)
예제 #2
0
def filter_by(context, object_list, fields=[], exclude=[], template_object_name="object"):
    """Allows filtering of arbitrary models.
    """
    request = context['request']

    field_names, filter_fields, filtered_object_list = filter_objects(request, object_list, fields, exclude)

    context['filter_field_names'] = field_names
    context['filter_fields'] = filter_fields
    context[u'%s_list' % template_object_name] = filtered_object_list

    return ""
예제 #3
0
def filtered_list_detail(request, model_or_queryset, fields=[], exclude=[], page=0, paginate_by=10, **kwargs):
    """Returns a filtered list of given objects.
    """
    field_names, filter_fields, object_list = filter_objects(
        request,
        model_or_queryset,
        fields=fields,
        exclude=exclude
    )

    extra_context = kwargs.pop('extra_context', {})
    extra_context.update({
        'field_names': field_names,
        'filter_fields': filter_fields,
    })

    return list_detail.object_list(
        request,
        queryset=object_list,
        paginate_by=paginate_by,
        page=page,
        extra_context=extra_context,
        **kwargs
    )