Skip to content

Autocomplite for CharField #913

@BorisPlus

Description

@BorisPlus

Hello. i have the same problem in my project as #810

I want to autocomplite CharField of model

# models.py


class Pet(models.Model):
    name = models.CharField(blank=False, null=False, default='Noname', max_length=50)

    def __str__(self):
        return self.name


# forms.py


class PetForm(ModelForm):
    class Meta:
        model = Pet
        fields = [
            'name',
        ]
        widgets = {
            'name': autocomplete.ListSelect2(url='pet_name_lookup'),
        }

# admin.py


class PetAdmin(admin.ModelAdmin):
    form = PetForm

admin.site.register(Pet, PetAdmin)


# view.py


class PetNameLookup(autocomplete.Select2ListView):

    def create(self, text):
        return text

    def get_list(self):
        result_list = []
        if self.q:
            data = Pet.objects.all().filter(name__icontains=self.q)[:10]

            result_list = [x.name for x in data]
        return result_list

On create admin form it works perfect, but when i try change pet name ListSelect2-widget set the field to blank.

Please help me. DAL is perfect!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions