मैं एक Django ऐप लिख रहा हूं जिसमें उपयोगकर्ता छवियां अपलोड कर सकते हैं, और मुझे यकीन नहीं है कि उनकी सेवा कैसे करें। मैं दो तरह से देख सकते हैं:Django में उपयोगकर्ता द्वारा अपलोड की गई फ़ाइलों को कैसे सेवा दें?
1- उन्हें स्थिर फाइल अपलोड: उन्हें अपने प्रोजेक्ट की निर्देशिका में static
फ़ोल्डर में अपलोड करें, और उसके बाद python manage.py collectstatic
चलाने के लिए, लेकिन मैं इस आदेश स्वचालित रूप से हर बार एक फ़ाइल को चलाने के लिए कैसे पता नहीं है अपलोड किया गया है, और ऐसा प्रसंस्करण प्रतीत होता है क्योंकि प्रत्येक बार सर्वर मेरे स्थिर ऐप में सबकुछ हटा देगा और पुनः लोड करेगा। मेरी urls.py में
2- उपयोग django.views.static.serve
:
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.MEDIA_ROOT,
}),
लेकिन the doc उत्पादन के लिए यह सिफारिश नहीं करता।
उपयोगकर्ता द्वारा अपलोड की गई फ़ाइलों को प्रदर्शित करने का अनुशंसित तरीका क्या है?
मैं अपाचे या एक समान वेब सर्वर के माध्यम से उन फ़ाइलों की सेवा करने की एक अच्छा विचार लगता है। यदि आपको उपयोगकर्ता अनुमतियों जैसे अधिक नियंत्रण की आवश्यकता है, तो mod_xsendfile एक विकल्प हो सकता है। – Jingo