django-autocomplete-light を django contrib ユーザー モデルで動作させることができないようです。常に例外「選択肢はクエリセットである必要があります」を取得します
これは私のオートコンプリート クラスです (autocomplete_ligh_registry.py で定義):
import autocomplete_light
from django.contrib.auth.models import User
class UserAutocomplete(autocomplete_light.AutocompleteModelBase):
search_fields = ['first_name']
model = User
autocomplete_light.register(UserAutocomplete)
私のフォーム(forms.py内):
class TransactionForm(forms.Form):
mymodel = forms.ModelChoiceField( required=True,
queryset=User.objects.all() ,
widget=autocomplete_light.ChoiceWidget('UserAutocomplete'))
{{form}} でレンダリングしようとすると、例外がスローされます: 選択肢はクエリセットである必要があります: スタック:
/home/prj/docs/projectos/.../src/autocomplete-light/autocomplete_light/widgets.py in render
choices = autocomplete.choices_for_values() ...
▶ Local vars
/home/prj/docs/projectos/.../src/autocomplete-light/autocomplete_light/autocomplete/model.py in choices_for_values
assert self.choices is not None, 'choices should be a queryset'
これは開発中のdjango 1.6です。ユーザーを作成しました。django-autocomplete-light は autocompleteListBase で問題なく動作します。例:
class OsAutocomplete(autocomplete_light.AutocompleteListBase):
choices = ['Linux', 'BSD', 'Minix']
autocomplete_light.register(OsAutocomplete)
したがって、urls.py にはレジストリが含まれており、url が登録され、javascript が読み込まれています。次のドキュメント: http://django-autocomplete-light.readthedocs.org/en/latest/index.html#tutorial
ポインタはありますか?
ありがとう!