Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django Autocomplete Light limiting query results

When I register autocomplete_light.AutocompleteModelBase and use it in my form, the results that are shown are always limited to 20. I can't find any option in the docs to increase the number of results that gets displayed on the form.

autocomplete_light_regisrty.py

class IssueAutocomplete(autocomplete_light.AutocompleteModelBase):
    model = Issue
    search_fields = ('^issue_number',)

autocomplete_light.register(
    IssueAutocomplete,
    attrs={
        'placeholder': 'Type an issue number...',
        'data-autocomplete-minimum-characters': 1
    },
)

forms.py

class StoryForm(autocomplete_light.ModelForm):
    class Meta:
        model = Story
        fields = ('slug', 'summary', 'author', 'editor', 'issue',)

But when I search my form, only a maximum of 20 results appear, even though I have well over 60. This is replicated when I go to /autocomplete/IssueAutocomplete. Only 20 results appear at a time.

How do I get a full list of resuls?

like image 429
user1410712 Avatar asked Nov 22 '25 06:11

user1410712


2 Answers

You should to use limit_choices as is described in documentation.

like image 159
dani herrera Avatar answered Nov 23 '25 20:11

dani herrera


By default AutocompleteModelBase has the attribute named limit_choices which by default is set tot 20. You can overwrite it with a new value to expand it. Although not documented, if you want no limit pass -1 as the attribute is only to slice the results

like image 30
PuercoPop Avatar answered Nov 23 '25 21:11

PuercoPop