জ্যাঙ্গো-ক্যাশে-রেচক পদার্থ-আঙ্গুলসমূহ ক্যাশে অবৈধতার হ্যান্ডেল একটি পুনর্ব্যবহারযোগ্য জ্যাঙ্গো অ্যাপ্লিকেশন.
এই অ্যাপ্লিকেশন মূলত সহজে প্রয়োজন হলে আপনার সামনে শেষ ক্যাশে বাতিল মডেল callbacks মধ্যে হুক করার ব্যবস্থা উপলব্ধ করা হয়.
বর্তমানে, শুধুমাত্র একটি বার্নিশ ব্যাক প্রয়োগ করা হয়, কিন্তু নকশা মন অন্যান্য সম্ভব এন্ডের দিয়ে তৈরি করা হয়েছে.
ব্যবহারের
আপনার INSTALLED_APPS করতে 'cache_purge_hooks' যোগ করুন.
#our প্রিটেন্ড মডেল
বর্গ পোস্ট (models.Model):
& Nbsp; শিরোনাম = models.CharField (MAX_LENGTH = 200)
& Nbsp; স্লাগ্ = models.SlugField (অনন্য = সত্য, MAX_LENGTH = 200)
& Nbsp; শরীরের = models.TextField (ফাঁকা = সত্য, = সত্য নাল)
cache_purge_hooks আমদানি cache_purge_hook থেকে
cache_purge_hook (পোস্ট)
উপরের বর্ণনা অনুযায়ী, cache_purge_hooks মডিউল একটি ফাংশন cache_purge_hook রয়েছে. প্রথম আর্গুমেন্ট হিসাবে একটি মডেল পাস. ক্যাশে ব্যবস্থা মডেল উদাহরণস্বরূপ এর get_absolute_url () মেথড উপর লোভী-ব্যাক এবং সেই বিশেষ URL এর জন্য ব্যাক ক্যাশে মুছে ফেলা হবে.
কোনো উদাহরণস্বরূপ একাধিক সম্পর্কিত URL গুলি আছে, বাতিল URL এর একটি তালিকা প্রদান করে যে একটি কাস্টম get_absolute_urls () পদ্ধতি নির্ধারণ:
বর্গ বিভাগ (models.Model):
& Nbsp; নাম = models.CharField (MAX_LENGTH = 200)
& Nbsp; স্লাগ্ = models.SlugField (অনন্য = সত্য, MAX_LENGTH = 200)
& Nbsp; শিরোনাম = models.CharField (MAX_LENGTH = 127, ফাঁকা = সত্য)
& Nbsp; Def get_absolute_url (স্ব):
& Nbsp; & nbsp; & nbsp; বিপরীত ("বিভাগ", kwargs = {ফিরে
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "বিভাগ": self.slug
& Nbsp; & nbsp; & nbsp; })
& Nbsp; Def get_absolute_urls (স্ব):
& Nbsp; & nbsp; & nbsp; Gau = self.get_absolute_url ()
& Nbsp; & nbsp; & nbsp; [('blog_home') বিপরীত, Gau] ফিরে
উপরে মডেল, আমরা একটি ব্লগ পোস্ট বিভাগ মডেল আছে. এটা get_absolute_url () মেথড urls.py সংজ্ঞায়িত একটি নির্দিষ্ট নামে রুট সাথে সংযুক্ত করা হয়, কিন্তু বিভাগের কোনো পরিবর্তন ব্লগ হোম পৃষ্ঠা প্রতিফলিত হতে হবে (বলে উদাহরণস্বরূপ, হোম পৃষ্ঠা সব শ্রেণীর একটি ট্যাগ মেঘ রয়েছে). এই তথ্য পরিবর্তিত হয় যখন যে পাতা অকার্যকর ও বাতিল করা হবে.
আপনি স্পষ্টভাবে get_absolute_url () মান দখল করতে হবে লক্ষ্য করুন. এটি বিদ্যমান) (get_absolute_urls যদি বলা হবে না.
যে আপনার পছন্দ হয় না, তাহলে আপনি একটি দৃষ্টান্ত নেয় এবং URL গুলির একটি তালিকা ফেরৎ একটি ফাংশন purge_related_blog একটি 2nd যুক্তি হিসাবে পাস করতে পারেন.
উদাহরণ স্বরূপ:
facebook_comments.models থেকে FacebookCommentCache আমদানি
Def purge_related_blog (উদাহরণস্বরূপ):
& Nbsp; জনসংযোগ = urlparse.urlparse (instance.url)
& Nbsp; [pr.path] ফিরে
cache_purge_hook (FacebookCommentCache, purge_related_blog)
উপরে ক্ষেত্রে, সাইট অন্য পুনর্ব্যবহারযোগ্য অ্যাপ্লিকেশন (facebook_cached_comments) ব্যবহার করা হয়, কারণ এই দরকারী. . এই) (একটি get_absolue_urls প্রদান একটি তৃতীয় পক্ষের কোড আপ ফাটান তুলনায় অনেক ভালো?
আবশ্যক
- পাইথন
- জ্যাঙ্গো
- পাইথন-বার্নিশ
পাওয়া মন্তব্যসমূহ না