我想在开发时提供静态html文件。我希望file.html
能够提供每个/file
。
很明显,在制作中,静态文件应该通过Nginx或其他方式提供。
但是如何以优雅的方式在开发中做到这一点? index.html
/
urls.py
也是如此。
我现在拥有的:
在if settings.DEBUG:
def index(request):
return render(request, 'index.html')
urlpatterns += patterns('', url(r'^$', index))
urlpatterns += static('/', document_root=settings.BASE_DIR+'/static/')
settings.py
还有STATIC_URL = '/static/'
TEMPLATE_DIRS = (
os.path.join(BASE_DIR, 'static/'),
)
zmq.proxy(router, dealer)
答案 0 :(得分:1)
我会编写一个视图来处理添加.html
并配置URLConf来使用它。
视图
from django.conf import settings
from django.contrib.staticfiles.views import serve
def serve_html(request, file_name):
if not file_name:
file_name = 'index'
file_path = '{}.html'.format(file_name)
# Use Django staticfiles's serve view.
return serve(request, file_path)
URLConf
url(r'^(?P<file_name>.*)$', serve_html)
将URLConf放在urls.py
的最后位置非常重要,否则它会捕获所有请求,并且无法访问其他URLConf。