জ্যাঙ্গো-সমাপ্তির স্বয়ংপূর্ণ করাটি প্রস্তাব একটি জ্যাঙ্গো অ্যাপ্লিকেশন.
নিম্নলিখিত এন্ডের সমর্থন:
& Nbsp; * solr
& Nbsp; * postgres
& Nbsp; * redis (সুন্দর পরীক্ষামূলক)
ব্যবহার সাধারণত জ্যাঙ্গো রেজিস্ট্রেশন-Y প্যাটার্ন অনুসরণ করে:
django.db আমদানি মডেল থেকে
সমাপ্তির আমদানি সাইট থেকে
বর্গ ব্লগ (models.Model):
& Nbsp; শিরোনাম = models.CharField (MAX_LENGTH = 255)
& Nbsp; pub_date = models.DateTimeField ()
& Nbsp; কন্টেন্ট = models.TextField ()
& Nbsp; = models.BooleanField প্রকাশিত (ডিফল্ট = সত্য)
& Nbsp; Def get_absolute_url (স্ব):
& Nbsp; ফিরে (বিপরীতক্রমে 'blog_detail', args = [self.pk])
বর্গ BlogProvider (AutocompleteProvider):
& Nbsp; Def get_title (স্ব, OBJ):
& Nbsp; obj.title ফিরে
& Nbsp; Def get_pub_date (স্ব, OBJ):
& Nbsp; datetime.datetime ফিরে (2010, 1, 1)
& Nbsp; Def get_data (স্ব, OBJ):
& Nbsp; ফিরে {'stored_title': obj.title, 'URL': obj.get_absolute_url ()}
& Nbsp; Def get_queryset (স্ব):
& Nbsp; ফিরে self.model._default_manager.filter (= সত্য প্রকাশিত)
site.register (ব্লগ, BlogProvider)
ব্লগ মডেল এখন স্বয়ংসম্পূর্ণ জন্য প্রস্তুত, কিন্তু তারা ফিরে যাবে আগে বস্তু সংরক্ষণ করা হবে:
>>> সমাপ্তির আমদানি সাইট থেকে
>>> Site.store_providers ()
>>> Site.suggest ('TES')
[
& Nbsp; {u'stored_title ': পাইথন u'testing', u'url ': U' / ব্লগ / 1 / '},
& Nbsp; {u'stored_title ': পাইথন কোড u'testing', u'url ': U' / ব্লগ / 3 / '},
& Nbsp; {u'stored_title ': u'web পরীক্ষার পাইথন', u'url ': U' / ব্লগ / 2 / '},
& Nbsp; {u'stored_title ': পাইথন সঙ্গে u'unit পরীক্ষা', u'url ': U' / ব্লগ / 4 / '},
]
>>> Site.suggest (টেস্টিং ')
[
& Nbsp; {u'stored_title ': পাইথন u'testing', u'url ': U' / ব্লগ / 1 / '},
& Nbsp; {u'stored_title ': পাইথন কোড u'testing', u'url ': U' / ব্লগ / 3 / '},
& Nbsp; {u'stored_title ': u'web পরীক্ষার পাইথন', u'url ': U' / ব্লগ / 2 / '},
]
অবজেক্টস সূচক থেকে যে কোনো সময়ে যোগ বা মুছে ফেলা হতে পারে:
>>> Site.store_object (some_blog_instance)
>>> Site.remove_object (some_other_obj)
কনফিগার
AUTOCOMPLETE_BACKEND সেটিং আপনি স্বয়ংসম্পূর্ণ জন্য ব্যবহার করার জন্য যা ব্যাক নির্দিষ্ট করার অনুমতি দেয়. বিকল্পগুলি হল:
& Nbsp; * completion.backends.postgres_backend.PostgresAutocomplete
& Nbsp; * completion.backends.redis_backend.RedisAutocomplete
& Nbsp; * completion.backends.solr_backend.SolrAutocomplete
Redis কনফিগার করার পদ্ধতি
আপনি ইনস্টল Redis এবং redis-Py আছে তা নিশ্চিত করুন.
<পোর্ট>: <ডাটাবেস> সংযোগ স্ট্রিং <হোস্টনেম> যেখানে আপনার সেটিংস ফাইল, নিচের মত কিছু যোগ
AUTOCOMPLETE_REDIS_CONNECTION = 'স্থানীয় হোস্ট: 6379: 0'
কনফিগার Solr
আপনি Solr এবং pysolr ইনস্টল করা হয়েছে কি না.
আপনার সেটিংস ফাইল এই মত কিছু যোগ:
AUTOCOMPLETE_SOLR_CONNECTION = http: // localhost: 8080 / solr / স্বয়ংসম্পূর্ণ কোর / '
আপনি Solr (আমি বলতে চাই যা!) ব্যবহার শেষ হলে উপরন্তু, আপনি আপনার solr স্কিমা মধ্যে সঠিক ক্ষেত্র সংজ্ঞা আছে কিনা তা নিশ্চিত করতে হবে. একটি নমুনা স্কিমা চলমান দ্বারা, স্বয়ংক্রিয়ভাবে আপনার জন্য তৈরি করা যেতে পারে:
django-admin.py autocomplete_schema
এটি আপনার বর্তমান ডিরেক্টরির মধ্যে একটি ফাইল নামে schema.xml ড্রপ করবে.
ইনস্টলেশন:
পাইথন ইনস্টল setup.py
বা
আপনার পাইথন-পথে সমাপ্তির ফোল্ডারে রাখা
আবশ্যক
- পাইথন
পাওয়া মন্তব্যসমূহ না