Autocomplete¶
This filter is for ForeignKeys and uses select2 javascript. It is based on the standard Django autocomplete implementation, no external libraries are needed.
See Django autocomplete documentation for the ajax service options.
Usage¶
python:
class MyCountry(models.ModelAdmin):
search_fields = ('name', )
class MyModelAdmin(AdminFiltersMixin, models.ModelAdmin):
list_filter = (
('country', AutoCompleteFilter),
...
)
LinkedAutoComplete¶
As filter_autocomplete_ it can be used in case dependant master/details elements where we want to limits the “details” based on the “master” selection.
Usage¶
python:
class Country(models.Model):
...
class Region(models.Model):
country = models.ForeignKey(Country, ...)
class MyModel(models.Model):
region = models.ForeignKey(Region, ...)
class MyCountry(AdminAutoCompleteSearchMixin, models.ModelAdmin):
search_fields = ('name', )
class MyRegion(AdminAutoCompleteSearchMixin, models.ModelAdmin):
search_fields = ('name', )
class MyModelAdmin(AdminFiltersMixin, models.ModelAdmin):
list_filter = (
('region__country', LinkedAutoCompleteFilter.factory(parent=None)),
('region', LinkedAutoCompleteFilter.factory(parent="region__country")),
...
)