我可以使用 Sphinx 在 django 项目中编写我的帮助文档吗
Can I use Sphinx write my help documentation in a django project
我有一个 django 项目,其中一个菜单选项是 'Help'。帮助文档是使用 Sphinx 编写的,并且有很多页面,例如索引、简介、第一视图、用户、词汇表。
我用过 html:
<li><a href="help" target="_blank">Help</a></li>
我的网址和观点是:
urls.py
urlpatterns = [
url(r'^help/', views.index, name='index'),
]
views.py:
def index(request):
url = 'help/index.html'
return render(request, url, {})
这会将我从菜单转到帮助索引页面,但是我在文档页面中单击的每个 link 都会通过视图中的索引重新引导我返回,并重新显示索引页面,而不是如果显示我请求的 link。
如果不使用 django 站点直接在浏览器中显示索引页面,它会按预期工作。
我讨厌将帮助子系统集成到 django 中,因为每次我 'make html'.
它都会被覆盖
我应该采取什么方法?
我正在使用的折衷方案是在 urls.py 的帮助文档中为每个页面创建一个条目,并在 [ 中创建一个相应的条目=32=],因此
urls.py
urlpatterns = [
url(r'^help/first_view', views.first_view, name='first_view'),
url(r'^help/glossary', views.glossary, name='glossary'),
url(r'^help/', views.index, name='index'),
]
views.py
def index(request):
url = 'help/index.html'
return render(request, url, {})
def first_view(request):
url = 'help/first_view.html'
return render(request, url, {})
def glossary(request):
url = 'help/glossary.html'
return render(request, url, {})
我写了一个脚本来更新 'make html' 之后的 html 页面以指向相关的 css 和图像文件。在我的例子中,我的 css 文件在 static/css 中,我执行这种功能:
CSS_POINTER = '{% load static %}'
for line in file_lines:
if '.css' in line:
middle = line.replace('_static', "{% static 'css")
line = middle.replace('.css', '.css'+"' %}")
if not CSS_POINTER in file.lines:
file_lines.insert(0, CSS_POINTER)
我有一个 django 项目,其中一个菜单选项是 'Help'。帮助文档是使用 Sphinx 编写的,并且有很多页面,例如索引、简介、第一视图、用户、词汇表。
我用过 html:
<li><a href="help" target="_blank">Help</a></li>
我的网址和观点是:
urls.py
urlpatterns = [
url(r'^help/', views.index, name='index'),
]
views.py:
def index(request):
url = 'help/index.html'
return render(request, url, {})
这会将我从菜单转到帮助索引页面,但是我在文档页面中单击的每个 link 都会通过视图中的索引重新引导我返回,并重新显示索引页面,而不是如果显示我请求的 link。
如果不使用 django 站点直接在浏览器中显示索引页面,它会按预期工作。
我讨厌将帮助子系统集成到 django 中,因为每次我 'make html'.
它都会被覆盖我应该采取什么方法?
我正在使用的折衷方案是在 urls.py 的帮助文档中为每个页面创建一个条目,并在 [ 中创建一个相应的条目=32=],因此
urls.py
urlpatterns = [
url(r'^help/first_view', views.first_view, name='first_view'),
url(r'^help/glossary', views.glossary, name='glossary'),
url(r'^help/', views.index, name='index'),
]
views.py
def index(request):
url = 'help/index.html'
return render(request, url, {})
def first_view(request):
url = 'help/first_view.html'
return render(request, url, {})
def glossary(request):
url = 'help/glossary.html'
return render(request, url, {})
我写了一个脚本来更新 'make html' 之后的 html 页面以指向相关的 css 和图像文件。在我的例子中,我的 css 文件在 static/css 中,我执行这种功能:
CSS_POINTER = '{% load static %}'
for line in file_lines:
if '.css' in line:
middle = line.replace('_static', "{% static 'css")
line = middle.replace('.css', '.css'+"' %}")
if not CSS_POINTER in file.lines:
file_lines.insert(0, CSS_POINTER)