Django व्यवस्थापक में मेरे कुछ विचारों को लोड करने में बहुत लंबा समय लगता है। चिंग अप चक्र क्या है यह देखने के लिए Django व्यवस्थापक दृश्य को डीबग करने का सबसे अच्छा तरीका क्या है?धीमे Django व्यवस्थापक विचारों को डिबगिंग
उत्तर
जैसा कि रतनप्लान ने टिप्पणी की, django debug toolbar प्रोफाइलिंग शुरू करने का सबसे आसान तरीका है (पेज लोड पर निष्पादित सभी प्रश्न दिखाता है, उनके एक्स्पलाइन, निष्पादित करने के लिए अपना समय इत्यादि)। How to profile django application with respect to execution time?
यही सवाल € ाय के उपयोग, जो भी profiling django तहत Django के विकी पर संदर्भित है का उल्लेख है: तुम भी यहाँ एक धीमी गति से Django स्थापना की रूपरेखा के बारे में एक सवाल पर एक नज़र हो सकता था।
मैंने भी इसे Django व्यवस्थापक में विशेष मॉडल के साथ देखा है यदि उनकी टेबल बहुत बड़ी हैं (कई मिलियन रिकॉर्ड चाल चलेंगे) और टेबल इंजन MySQL के InnoDB है। 100 एम + रिकॉर्ड के साथ टेबल के लिए फिर से मेरे Django व्यवस्थापक को फिर से मिलाने के लिए कामकाज का पता लगाने में मुझे कुछ समय लगा। मूल समस्या COUNT(*)
पृष्ठ लोड पर पूछताछ और यहां तक कि खराब तरीके से निर्मित क्वेरी पूछताछ समाप्त हो गई जब भी मैंने मॉडल 0 से अपने search_fields
में से एक का उपयोग किया।
मैं अपने सभी समाधान यहाँ प्रलेखित है, ताकि वे एक दिन संकट में एक साथी Django-er मदद कर सकता है: http://craiglabenz.me/2013/06/12/how-i-made-django-admin-scale/
उम देने के लिए 'list_select_related = True' संपत्ति' जोड़ने का प्रयास कर सकते हैं, आपको यहां समाधान को संक्षेप में/देना चाहिए यदि लिंक टूट जाता है (फिर से)। – SamB
यह उत्तर काम करता है, बग याद रखें कि यदि आप 'ModelAdmin' को अनुकूलित कर रहे हैं, तो आपको अपने' get_queryset' को फिर से लिखना चाहिए क्योंकि 'django.admin'' _default_manager' का उपयोग करता है। अधिक जानकारी जांचें [यह] (http://stackoverflow.com/questions/1545067/django-specify-which-model-manager-django-admin-should-use)। – shellbye
आप MySQL के साथ Django का उपयोग करते हैं तो अंदरूनी साथ MySQL में एक बग मिलती अनुकूलन है। यदि आप Admin.list_display
में विदेशी कुंजी का उपयोग करने का प्रयास करते हैं तो Django ऑर्डरिंग और इनर जॉइन के साथ क्वेरी जेनरेट करेगा जो MySQL में बेहद धीमी है।
है कि करने के लिए दो समाधान हैं:
उपयोग Django-mysql ठीक बैकएंड: AdminChangeList में https://pypi.python.org/pypi/django-mysql-fix
अवहेलना
get_query_set
- हटानेselect_related
औरprefetch_related
क्षेत्रों सेट - अधिक जानकारी के मेरे दूसरे में हैं यहां जवाब: https://stackoverflow.com/a/23097385/1178806
यहां कुछ अच्छे हैं आप list_per_page विकल्प जोड़ने और कम परिणाम दिखा सकता 1): धीमी गति से रूपों संपादित कई रिकॉर्ड Django admin change form load quite slow
के बारे में सूची दृश्य के साथ ForeignKey तालिकाओं के कारण के बारे में nswers
class EventAdmin(admin.ModelAdmin):
list_per_page = 20
2) या का उपयोग select_related():
2,1) Django < 1.6 के लिए:
class EventAdmin(admin.ModelAdmin):
def queryset(self, request):
qs = super(EventAdmin, self).queryset(request)
return qs.select_related('foreign_key_field1, foreign_key_field2, etc')
2.2) Django> = 1.6 के लिए:
class EventAdmin(admin.ModelAdmin):
def get_queryset(self, request):
qs = super(EventAdmin, self).queryset(request)
return qs.select_related('foreign_key_field1, foreign_key_field2, etc')
बेशक
, foreign_key_field1 बदल दें और foreign_key_field2, आदि उपयुक्त क्षेत्र नाम के साथ।
- 1. django-taggit: व्यवस्थापक को
- 2. Django व्यवस्थापक इंटरफ़ेस
- 3. Django व्यवस्थापक
- 4. django व्यवस्थापक
- 5. Django व्यवस्थापक
- 6. django व्यवस्थापक
- 7. Django व्यवस्थापक
- 8. Django व्यवस्थापक
- 9. django व्यवस्थापक
- 10. Django व्यवस्थापक
- 11. django व्यवस्थापक
- 12. Django व्यवस्थापक
- 13. Django व्यवस्थापक
- 14. django व्यवस्थापक
- 15. Django व्यवस्थापक
- 16. कैसे Django विचारों
- 17. Django व्यवस्थापक को हटाएं पृष्ठ
- 18. Django व्यवस्थापक - मैं कस्टम व्यवस्थापक फॉर्म
- 19. Django व्यवस्थापक, इनलाइन फॉर्मेट
- 20. Django व्यवस्थापक list_display SHORT_DESCRIPTION
- 21. django व्यवस्थापक अनुक्रमणिका पृष्ठ
- 22. Django व्यवस्थापक 'पृष्ठ/व्यवस्थापक में नहीं मिला/
- 23. Django व्यवस्थापक परिवर्तन फ़ॉर्म
- 24. Django व्यवस्थापक - पुनः प्रमाणीकरण?
- 25. Django: व्यवस्थापक सत्यापन त्रुटि
- 26. Django व्यवस्थापक विकल्प फ़ील्ड
- 27. Django व्यवस्थापक पृष्ठ
- 28. Django व्यवस्थापक सूची फ़िल्टर
- 29. django व्यवस्थापक टेम्पलेट ओवरराइड
- 30. django व्यवस्थापक/इनलाइन
https://github.com/django-debug-toolbar/django-debug-toolbar#readme – rantanplan
आप व्यवस्थापक वर्ग – yedpodtrzitko