【问题标题】:django autocomplete_light default widget instead of autocomplete widgetdjango autocomplete_light 默认小部件而不是自动完成小部件
【发布时间】:2023-03-16 21:51:01
【问题描述】:

我想创建一个带有简单输入文本字段的简单表单,它使用自动完成来帮助用户填写输入字段

我正在尝试让 django_autocomplete_light 工作 - 我严格按照说明进行操作,但呈现的表单仍然有一个简单的 "dropdown"(选择)菜单,而不是自动完成文本字段..(其中包含所有城市,需要很长时间才能处理)

我在settings.py 和urls.py 中输入了所有必要的条目,并且所有的javascript 都被加载了。

有趣的事情:我已经开始使用它了 - 而不是 dropdown 菜单,而是一个具有 autocomplete 功能的 textfield - 然后我尝试了别的东西,当我再次尝试以前的工作解决方案时,它不再起作用了。我找不到我的错误:(

这是autocomplete_light_registry.py:

   import autocomplete_light

   from cities_tiny.models import City

   autocomplete_light.register(City, search_fields=('name','name_ascii'),
       autocomplete_js_attributes={'placeholder': 'city name ..'})

这是forms.py:

from django import forms
import autocomplete_light
from models import Search

class SearchForm(forms.ModelForm):
    class Meta:
        widgets = autocomplete_light.get_widgets_dict(Search)
        model = Search

这是models.py:

from django.db import models
from django.core import urlresolvers


class Search(models.Model):
    city = models.ForeignKey('cities_tiny.city', null=True, blank=True)


    def get_absolute_url(self):
        return urlresolvers.reverse('non_admin:widget_update', args=(self.pk,))

如果这可行,那就没问题了,但我宁愿只使用表格...... 我想我不需要额外的模型“Search”,因为我已经有了“cities_tiny.city”。 表单应该从 "City" 模型中获取其 autocomplete 值。

我还发现我不能像在文档中那样在模型中的某处使用 "CityAutocomplete"。它总是说KeyError。

感谢您的帮助。

【问题讨论】:

    标签: python django django-autocomplete-light


    【解决方案1】:

    我想我找到了答案:)

    使用注册的自动完成名称时,我总是收到以下消息:

    KeyError at /search/ 'CityAutocomplete'
    

    localhost:8000/autocomplete/ 向我展示了所有已注册的自动完成功能,但这些自动完成功能无法使用

    在forms.py我不得不

    import autocomplete_light_registry
    

    摆脱KeyError


    正如我之前提到的,我让它以某种方式工作,但我很确定我没有导入 autocomplete_light_registry 因此,如果有人对“真正的”错误所在有提示...非常感谢

    【讨论】:

      猜你喜欢
      • 2016-11-07
      • 2015-04-14
      • 2017-07-08
      • 2019-10-01
      • 2015-12-11
      • 2021-12-31
      • 2012-08-11
      • 2011-02-15
      • 2021-09-30
      相关资源
      最近更新 更多