如何在Django中为包含静态html文件的`Docs`文件夹提供服务?

时间:2019-04-12 11:25:58

标签: django url documentation

我在Django中具有以下代码结构。

├── docs
│   └── _build
│       ├── doctrees
│       └── html
│           └── index.html
│    
├── localcoinswap
├── scripts
├── _static
├── _templates
├── tests
└── manage.py

这里docs文件夹包含静态html文件。即 index.html

以下是有关问题的一些问题:

  1. docs项目中,<domain>/docs/index.html文件夹的html应该用作URL Django。如何做到这一点

  2. 应仅限于具有is_staff属性True的用户。

我应该使用哪个urlpattern,哪个View对提供这些静态文件有用(受管理员限制)?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

TEMPLATES的{​​{1}}设置中添加文档的基本目录。

settings.py

在您的TEMPLATES = [ { ... 'DIRS': [os.path.join(BASE_DIR, '_templates'), "add your base directory here"], ... } ] 中,使用urls.py提供文件。要进一步将网址限制为仅工作人员,可以将视图包装在TemplateView装饰器中。

staff_member_required

确保模板和doc模板的文件名不冲突,否则将始终考虑根据from django.contrib.admin.views.decorators import staff_member_required ... urlpatterns += [url(r'^docs/index\.html$', staff_member_required(TemplateView.as_view(template_name='index.html')), name="index"),] 列表评估的第一个文件。