में क्वेरी सेट पर "व्याख्या" चलाने का आसान तरीका ऐसा लगता है जैसे Django में एक क्वेरीसेट से सीधे "व्याख्या" करना आसान होना चाहिए, लेकिन मुझे यह कैसे करना है इसके बारे में कुछ भी स्पष्ट नहीं दिख रहा है, और दस्तावेज़ों में खोजना मुश्किल है "व्याख्या करें"।django
from django.db import connections
from django.db.models.query import QuerySet
class QuerySetExplainMixin:
def explain(self):
cursor = connections[self.db].cursor()
cursor.execute('explain %s' % str(self.query))
return cursor.fetchall()
QuerySet.__bases__ += (QuerySetExplainMixin,)
उम्मीद है कि यह अन्य लोगों के लिए उपयोगी है:
कृपया django परियोजना के लिए टिकट खोलने पर विचार करें। मुझे यह बिल्टिन देखना अच्छा लगेगा। –
उपयोगी दिखता है, वास्तव में इसका उपयोग करने के उदाहरण के साथ और भी अधिक होगा। – szeitlin
धन्यवाद! यह स्वादिष्ट है! – mkoistinen