ジャンゴ完了には自動補完を提供していますDjangoのアプリです。
次のバックエンドをサポートしています。
  * Solrの
  * postgresの
  * Redisの(かなり実験的な)
使用方法は、典型的なDjangoの登録-Yのパターンに従います。
django.db輸入モデルから
完了輸入サイトから
クラスのブログ(models.Model):
 タイトル= models.CharField(MAX_LENGTH = 255)
 をpub_date = models.DateTimeField()
 コンテンツ= models.TextField()
  = models.BooleanField公開(デフォルト=真)
 デフはget_absolute_url(自己):
 リターン逆( 'blog_detail'、引数の= [self.pk])
クラスBlogProvider(AutocompleteProvider):
 デフget_title(自己、OBJ):
  obj.title戻ります
 デフget_pub_date(自己、OBJ):
  datetime.datetimeのを返す(2010、1、1)
 デフget_data(自己、OBJ):
 リターン{'stored_title':obj.title、「URL」:obj.get_absolute_url()}
 デフget_queryset(自己):
 戻りself.model._default_manager.filter(=真公開)
site.register(ブログ、BlogProvider)
ブログモデルは自動補完のための準備ができていますが、彼らは返すことができます前に、オブジェクトが格納されている必要があります。
>>>完了輸入サイトから
>>> site.store_providers()
>>> site.suggest( 'TES')
[
  {u'stored_title ':u'testingのpython'、u'url ':U' /ブログ/ 1 / '}、
  {u'stored_title ':u'testing Pythonコード'、u'url ':U' /ブログ/ 3 / '}、
  {u'stored_title ':u'webのテストのpython'、u'url ':U' /ブログ/ 2 / '}、
  {u'stored_title ':u'unitパイソンとテスト'、u'url ':U' /ブログ/ 4 / '}、
]
>>> site.suggest( 'テスト')
[
  {u'stored_title ':u'testingのpython'、u'url ':U' /ブログ/ 1 / '}、
  {u'stored_title ':u'testing Pythonコード'、u'url ':U' /ブログ/ 3 / '}、
  {u'stored_title ':u'webのテストのpython'、u'url ':U' /ブログ/ 2 / '}、
]
オブジェクトは、インデックスからいつでも追加または削除することができます。
>>> site.store_object(some_blog_instance)
>>> site.remove_object(some_other_obj)
設定
AUTOCOMPLETE_BACKENDの設定は、オートコンプリートに使用するバックエンドを指定することができます。オプションは次のとおりです。
  * completion.backends.postgres_backend.PostgresAutocomplete
  * completion.backends.redis_backend.RedisAutocomplete
  * completion.backends.solr_backend.SolrAutocomplete
Redisのの設定
あなたはRedisのを持っており、Redisの-PYインストールされていることを確認します。
接続文字列は、設定ファイルに次のようなものを追加します。<ホスト名>:<ポート>は、<データベース>
AUTOCOMPLETE_REDIS_CONNECTION = 'localhostを:6379:0]
Solrのの設定
あなたはSolrのとpysolrがインストールされていることを確認します。
お使いの設定ファイルに次のようなものを追加します。
AUTOCOMPLETE_SOLR_CONNECTION = 'にhttp:// localhost:8080 / Solrの/自動補完コア/'
あなたは(私はお勧め!)のSolrを使用して終了場合また、あなたはあなたのSolrのスキーマで正しいフィールド定義を持っていることを確認する必要があります。サンプル·スキーマは、実行することにより、自動的に生成することができます:
django-admin.py autocomplete_schema
これは、現在のディレクトリにschema.xmlをという名前のファイルをドロップします。
インストール:
Pythonはsetup.py installを
OR
このPythonの:あなたのpython-パス
この要件に完了フォルダを置きます
コメントが見つかりません