कुछ की तरहमैं कंसोल से कैश किए गए खंड को कैसे देखूं?
Rails.cache.delete('site_search_form')
काम करने के लिए प्रतीत नहीं होता। क्या यह संभव है? धन्यवाद।
कुछ की तरहमैं कंसोल से कैश किए गए खंड को कैसे देखूं?
Rails.cache.delete('site_search_form')
काम करने के लिए प्रतीत नहीं होता। क्या यह संभव है? धन्यवाद।
कैश खंड प्रविष्टियां Rails.cache के साथ आप जो भी एक्सेस करते हैं उससे थोड़ा अलग कुंजी के साथ बनाई जाती हैं।
उपयोग expire_fragment
बजाय (यदि आप एक नियंत्रक को भेज सकते हैं): http://api.rubyonrails.org/classes/ActionController/Caching/Fragments.html#M000438
यह मेरे लिए काम नहीं करता है। यदि यह आपके लिए काम नहीं करता है तो भी 'Rails.cache.delete_matched' विचार/site_search_form * '' – yivo
रेल 3 के रूप में, खंड कैश के अंत में हैश है, जो उस दृश्य की सामग्री पर आधारित है जिसमें वे उत्पन्न होते हैं। ऐसा इसलिए होता है जब दृश्य बदलता है तो कैश स्वचालित रूप से बस्ट किया जाता है, लेकिन यह कुंजी द्वारा समाप्त होने में मुश्किल बनाता है। आप रेल को बता सकते हैं कि कैश कॉल में 'skip_digest: true' के साथ हैश को नहीं जोड़ना है। अधिक जानकारी: https://www.reinteractive.net/posts/197-if-you-explicitly-expire-cached-fragments-opt-out-of-cache-digests –
ActionController :: Base.new.expire_fragment (कुंजी)
ruby-1.8.7-p334: 007> ActionController :: Base.new.expire_fragment (: नियंत्रक => 'मुख्य',: action => 'अनुक्रमणिका') NoMethodError: शून्य के लिए अपरिभाषित विधि 'host_with_port': NilClass – pixelearth
रेल 3 के रूप में, खंड कैश के अंत में हैश है , जो उस दृश्य की सामग्री पर आधारित है जिसमें वे उत्पन्न होते हैं। ऐसा इसलिए होता है जब दृश्य बदलता है तो कैश स्वचालित रूप से बस्ट किया जाता है, लेकिन यह कुंजी द्वारा समाप्त होने में मुश्किल बनाता है। आप रेल को बता सकते हैं कि कैश कॉल में 'skip_digest: true' के साथ हैश को नहीं जोड़ना है। अधिक जानकारी: https://www.reinteractive.net/posts/197-if-you-explicitly-expire-cached-fragments-opt-out-of-cache-digests –
Rails.cache.delete "views/site_search_form"
रेल 5 में मैं खराब करने के लिए निम्न कदम उठाए skip_digest: true
का उपयोग किए बिना कैश। हमारी समस्या यह थी कि I18n स्ट्रिंग्स के मान को बदलने से गणना की गई कैश पचाने में प्रतिबिंबित नहीं होता है ताकि कैश स्वचालित रूप से बस्ट नहीं हो सके।
/ views/layouts/_footer.html.slim
- cache :footer do
span= t('shared.footer')
फिर रेल कंसोल में मैं चलाएँ::
fragment = ActionController::Base.new.view_context.cache_fragment_name(:footer, virtual_path: 'layouts/_footer.html.slim')
ActionController::Base.new.expire_fragment(fragment)
cache_fragment_name
virtual_path
कीवर्ड तर्क के आधार पर डाइजेस्ट यह पता लगाने जाएगा
यहाँ दृश्य जहां कैश ब्लॉक परिभाषित किया गया है है।
रेल का कौन सा संस्करण आप चल रहे हैं? कैश डिलीट विधि 2.1 में जोड़ा गया था। – vrish88