我在django模型表单中使用autocomplete_light。
这是我的表格模型
class Ca_dispensaries_item(TimeStampedModel):
item = models.ForeignKey(Items)
dispensary = models.ForeignKey(Ca_dispensaries)
description = models.CharField(max_length=5000, null=True)这是表格
class CamenuForm(autocomplete_light.ModelForm):
class Meta:
model = Ca_dispensaries_item
exclude = ('dispensary',)
autocomplete_fields = ('item',)注册为
autocomplete_light.register(Items, search_fields=('item_name'))当我尝试在item中输入一些值时,根据自动完成功能,它开始搜索,但是给出了field error Cannot resolve keyword u'i' into field. Choices are: arizona_dispensaries_item, ca_dispensaries_item, colorado_dispensaries_item, created, id,我不知道这个i是从哪里来的。另外,dispensaries_items也是其中的一些模型。而created和id是字段名
发布于 2014-12-16 10:56:36
你已经放弃了一个逗号!变化
search_fields=('item_name')
至
search_fields=('item_name',)
search_fields应该是可迭代的,所以如果它有值('item_name') (是一个字符串),它将得到'i‘、't’、'e‘等等(这就是为什么您得到消息Cannot resolve keyword u'i' into field)。
另外,您的模型的名称也有一些严重的问题:我看到您有一个名为Items的模型和一个名为Ca_dispensaries_item的模型。您不应该将您的模型命名为复数,所以Items应该是Item,您需要在类名中使用CamelCase,因此Ca_dispensaries_item应该是CaDispensariesItem。
https://stackoverflow.com/questions/27501910
复制相似问题