2014-09-29 78 views
0

我在郊區運行Django項目,如www.example.com/django。一切工作正常,但我的靜態文件不在這個郊區工作,因爲他們所採取的URL是主要像www.example.com/static/path_to_files,但它應該採取的網址爲www.example.com/django/static/path_to_filesDjango項目中靜態文件的URL

這可以爲其他URL太大的情況下,因爲我覺得每當我使用任何網址爲任何一個環節,必須採取與suburl主機名狀www.example.com/django,而不是www.example.com

你也可以看到我的問題this有關服務器配置文件的更多信息。

回答

0

settings.py嘗試:

STATIC_URL = '/django/static/' 

點擊此處瞭解詳情:https://docs.djangoproject.com/en/dev/howto/static-files/

+0

是的,它工作,但只適用於靜態文件。我需要所有類型的網址都一樣。 – Inforian 2014-09-29 15:09:58

+0

嘗試在每個'url'的開頭在'urlpatterns'中添加'django' – 2014-09-29 16:36:48

0

,您可以手動在開發過程中通過增加線的urls.py爲他們服務:

urlpatterns = patterns('', 
    # Media files 
    url(r'^media/(?P<path>.*)$', 
     'django.views.static.serve', 
     {'document_root': settings.MEDIA_ROOT, 'show_indexes': True} 
    ), 

    # Static files 
    url(r'^static/(?P<path>.*)$', 
     'django.views.static.serve', 
     {'document_root': settings.STATIC_ROOT, 'show_indexes': True} 
    ), 
) 

不要在生產中使用它,並閱讀文檔,並對其進行了很好的解釋。

0

定義MEDIA_URL和STATIC_URL在settings.py

MEDIA_URL = /django/media 
STATIC_URL = /django/static 

而在模板中定義網址,然後在前面加上這個變量:

<a href="{{ MEDIA_URL }}/path_to_media_file/">media</a> 
<img src="{{ STATIC_URL }}/path_to_static_file" /> 

現在你可以不管你想要創建URL使用這些變量。