मैंने आधिकारिक Heroku docs on Django and Static Assets का पालन किया है; मैं dj-static
स्थापित किया है और मेरे requirements.txt
फ़ाइल में जोड़ा है, ठीक से मेरी settings.py
फ़ाइल में सभी चर कॉन्फ़िगर:जब मैं अपने Django ऐप को हरोकू में तैनात करता हूं तो संग्रहित स्वचालित रूप से क्यों नहीं चल रहा है?
STATIC_ROOT = os.path.join(CONFIG_ROOT, 'served/static/')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(CONFIG_ROOT, 'static'),
)
और यही मेरी wsgi.py
की तरह लग रहा है:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_django_project.settings")
from django.core.wsgi import get_wsgi_application
from dj_static import Cling
application = Cling(get_wsgi_application())
Procfile
की सामग्री :
web: gunicorn --bind 0.0.0.0:$PORT my_django_project.wsgi:application
दस्तावेज़ों में, यह कहता है कि "संग्रहित स्वचालित रूप से चलाया जाता है जब यह ठीक से कॉन्फ़िगर किया गया है। " लेकिन जब मैं अपनी साइट पर नेविगेट करता हूं तो स्पष्ट रूप से कोई सीएसएस नहीं होता है।
मैंने heroku run
का उपयोग करके debugging को आजमाया है, लेकिन यह केवल स्थिर फ़ाइलों की अपेक्षा करता है।
मैंने देखा है कि जब मैं अपने Procfile
में collectstatic
आदेश है, यानी
web: python my_django_project/manage.py collectstatic --noinput ; gunicorn -b 0.0.0.0:$PORT my_django_project.wsgi:application
... अपेक्षा के अनुरूप काम करता है शामिल है, इसलिए और स्थैतिक फ़ाइलें सेवा कर रहे हैं।
हालांकि जब मैं heroku run bash
चलाता हूं और उस निर्देशिका के अंदर देखता हूं जो STATIC_ROOT
इंगित कर रहा है, वहां कुछ भी नहीं है! वास्तव में, संपूर्ण served/
निर्देशिका गुम है, और फिर भी, स्थिर फ़ाइलों को अभी भी परोसा जा रहा है!
मैं अभी भी जानना चाहता हूं कि क्यों नहीं collectstatic
स्वचालित रूप से चल रहा है - जैसे दस्तावेज़ों में उल्लिखित - जब मैं अपने Django ऐप को हरोकू में तैनात करता हूं।
चेक इस http://stackoverflow.com/a/15858757/263989 – fasouto
@fasouto यह कोशिश की; कोई त्रुटि नहीं मिली मुझे अंत में 'प्रतिलिपि प्रतिलिपि' ... '' और '284 स्थिर फाइलों की प्रतिलिपि' का एक गुच्छा मिला। – 3cheesewheel