2016-04-01 78 views
0

我在Openshift中開發Django應用程序,但是如果我想在本地運行我的應用程序[localhost:8000]應用程序不加載靜態文件,但我的HTML模板已加載並且完美顯示。在本地運行Django Openshift應用程序時,不會加載靜態文件

+1

通常,這表示您的靜態資產設置可能不正確。你可以使用當前的'STATIC_ROOT'和'STATIC_URL'設置更新問題嗎?此外,如果您使用'manage.py runserver'運行應用程序,那麼還請確保遵循[在開發過程中提供靜態文件](https://docs.djangoproject.com/es/1.9/howto/static-files/)如有必要。 – sthzg

+0

@sthzg我知道它並尋找他們,但我不能解決我的問題 否則你可以說如何在應用程序中查找靜態文件'[myapp]'在'settings.py'內寫入 – beastreload

+0

什麼服務器你在本地運行嗎? Django開發服務器?在OpenShift上,如果靜態文件位於正確位置,它將使用Apache/mod_wsgi自動託管它們。在本地,如果不使用Django開發服務器,則需要將服務器配置爲自己託管它們,通過服務器配置或使用Whitenoise Dango中間件。 –

回答

0

如果您可以提供更多詳細信息或共享代碼,特別是可以正常工作的模板代碼以及不加載靜態文件的代碼。 最基本的問題可能是你錯過了正確的靜態文件配置。或者僅僅是缺少模板標籤{% load staticfiles %}

嘗試:https://docs.djangoproject.com/en/1.9/howto/static-files/

+0

簡而言之,這裏發生的是,當我將代碼提交給** Openshift **並打開頁面時,靜態文件被加載並且它們顯示正確。 但在本地運行_(在我的電腦中)_它找不到我的靜態文件'[Windows]' – beastreload

0

所以我遇到了類似的問題。正如utkarshmail2052提到的,如果你看一下Django文檔serving static files during development你會看到以下內容:

除了這些配置步驟,您還需要真正服務於靜態文件。如果你使用django.contrib.staticfiles如上所述,runserver命令 會自動執行此操作時,DEBUG設置爲True ...

所以我速戰速決被證實在我的settings.py DEBUG =真文件在我的本地機器上。現在,當您運行python manage.py runserver時,django應該自動爲您的localhost上的靜態文件提供服務。

在部署應用程序之前,請確保DEBUG爲false。