{ "info": { "author": "Charles Leifer", "author_email": "coleifer@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python" ], "description": "=================\ndjango-completion\n=================\n\nautocompletion for django apps\n\nsupports the following backends:\n\n* solr\n* database (using LIKE)\n* redis (pretty experimental)\n\nusage follows typical django registration-y pattern::\n\n from django.db import models\n\n from completion import site\n\n\n class Blog(models.Model):\n title = models.CharField(max_length=255)\n pub_date = models.DateTimeField()\n content = models.TextField()\n published = models.BooleanField(default=True)\n\n def get_absolute_url(self):\n return reverse('blog_detail', args=[self.pk])\n\n\n class BlogProvider(AutocompleteProvider):\n def get_title(self, obj):\n return obj.title\n\n def get_pub_date(self, obj):\n return datetime.datetime(2010, 1, 1)\n\n def get_data(self, obj):\n return {'stored_title': obj.title, 'url': obj.get_absolute_url()}\n\n def get_queryset(self):\n return self.model._default_manager.filter(published=True)\n\n\n site.register(Blog, BlogProvider)\n\n\nThe Blog model is now ready for autocomplete, but the objects must be stored before they can be returned::\n\n >>> from completion import site\n >>> site.store_providers()\n >>> site.suggest('tes')\n [\n {u'stored_title': u'testing python', u'url': u'/blogs/1/'},\n {u'stored_title': u'testing python code', u'url': u'/blogs/3/'},\n {u'stored_title': u'web testing python', u'url': u'/blogs/2/'},\n {u'stored_title': u'unit tests with python', u'url': u'/blogs/4/'},\n ]\n\n >>> site.suggest('testing')\n [\n {u'stored_title': u'testing python', u'url': u'/blogs/1/'},\n {u'stored_title': u'testing python code', u'url': u'/blogs/3/'},\n {u'stored_title': u'web testing python', u'url': u'/blogs/2/'},\n ]\n\n\nObjects can be added or removed at any time from the index::\n\n >>> site.store_object(some_blog_instance)\n >>> site.remove_object(some_other_obj)\n\n\nIf you have multiple types of objects in your autocomplete index, you can restrict\nresults to a certian type by passing in \"models\" to the suggest method::\n\n >>> site.suggest('python', models=[Blog, Photo])\n\n\nConfiguring\n-----------\n\nThe `AUTOCOMPLETE_BACKEND` setting allows you to specify which backend to use for autocomplete. The options are:\n\n* completion.backends.db_backend.DatabaseAutocomplete\n* completion.backends.redis_backend.RedisAutocomplete\n* completion.backends.solr_backend.SolrAutocomplete\n\n\nConfiguring Redis\n^^^^^^^^^^^^^^^^^\n\nMake sure that you have `Redis `_ and `redis-py `_ installed.\n\nAdd something like the following to your settings file, where the connection string is :: ::\n\n AUTOCOMPLETE_REDIS_CONNECTION = 'localhost:6379:0'\n\n\nConfiguring Solr\n^^^^^^^^^^^^^^^^\n\nMake sure that you have `Solr `_ and `pysolr `_ installed.\n\nAdd something like this to your settings file::\n\n AUTOCOMPLETE_SOLR_CONNECTION = 'http://localhost:8080/solr/autocomplete-core/'\n\nAdditionally, if you end up using Solr (which I'd recommend!), you will need to ensure you have the correct field definitions in your solr schema. A sample schema can be generated for you automatically, by running::\n\n django-admin.py autocomplete_schema\n\nThis will drop a file named ``schema.xml`` in your current directory.\n\n\nInstallation\n------------\n\n`python setup.py install`\n\nOR\n\nput the ``completion`` folder on your python-path", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/coleifer/django-completion", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "django-completion", "package_url": "https://pypi.org/project/django-completion/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-completion/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/coleifer/django-completion" }, "release_url": "https://pypi.org/project/django-completion/0.2.1/", "requires_dist": null, "requires_python": null, "summary": "autocompletion for django apps", "version": "0.2.1" }, "last_serial": 789342, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "0be63612258885c1c18fe071e7bde3c2", "sha256": "c9e57d8852a3911afaeabd53c8f5de38b3d606063cd0720d0e4de2a27c61a946" }, "downloads": -1, "filename": "django-completion-0.1.0.tar.gz", "has_sig": false, "md5_digest": "0be63612258885c1c18fe071e7bde3c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11925, "upload_time": "2010-12-26T21:36:12", "url": "https://files.pythonhosted.org/packages/fd/ab/340c8c0889a74b5ee279a2707d3e8523b8f76db81e7e940f34185fa5b911/django-completion-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "7336a43000378e3b97ae7d79b7479ceb", "sha256": "68d1e6741cd29b3ea2ec3e9c73294733160946454c85c4a5f6c5ea1b1ee712a7" }, "downloads": -1, "filename": "django-completion-0.2.0.tar.gz", "has_sig": false, "md5_digest": "7336a43000378e3b97ae7d79b7479ceb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14275, "upload_time": "2011-04-30T02:18:58", "url": "https://files.pythonhosted.org/packages/bc/7f/971837c60cb6ea33e37418fb18b07fcfb62ac7181b37ea1fbfcfd9e1c9ae/django-completion-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "9049b5417555b287859deec9bbf6557f", "sha256": "6728d92c04cc5e0d7ed383d372f5f35fa444318d7589b4e2b2e15369a438acde" }, "downloads": -1, "filename": "django-completion-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9049b5417555b287859deec9bbf6557f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15922, "upload_time": "2011-09-26T16:38:47", "url": "https://files.pythonhosted.org/packages/1a/07/1a5f70e9b1a17c5e2d646153e5dd42c974abd1030703a272a67dad769d36/django-completion-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9049b5417555b287859deec9bbf6557f", "sha256": "6728d92c04cc5e0d7ed383d372f5f35fa444318d7589b4e2b2e15369a438acde" }, "downloads": -1, "filename": "django-completion-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9049b5417555b287859deec9bbf6557f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15922, "upload_time": "2011-09-26T16:38:47", "url": "https://files.pythonhosted.org/packages/1a/07/1a5f70e9b1a17c5e2d646153e5dd42c974abd1030703a272a67dad769d36/django-completion-0.2.1.tar.gz" } ] }