django Admin文档生成器使用详解


Posted in Python onJuly 22, 2019

前言

Django的admindocs应用可以从模型、视图、模板标签等地方获得文档内容。

一、概览

要激活admindocs,请按下面的步骤操作:

  • 在INSTALLED_APPS内添加django.contrib.admindocs
  • 在urlpatterns内添加url(r'^admin/doc/',include('django.contrib.admindocs.urls'))。确保它处于r'^admin/'条目之前,原因你懂的。
  • 安装Python的docutils模块(http://docutils.sf.net/)(pip3 install docutils)
  • 可选:想使用admindocs的书签小工具,需要安装django.contrib.admindocs.middleware.XViewMiddleware

如果上述步骤顺利完成,那么你可以从admin界面访问doc界面,也可以直接访问/admin/doc,如下图:

django Admin文档生成器使用详解

它看起来是下面的样子:

django Admin文档生成器使用详解

下面的这些特殊标记,可帮助你在文档字符串中,快速创建指向其它组件的链接:

django Admin文档生成器使用详解

二、模型

在doc页面的模型部分,列出了所有的模型,点击可以查看具体的字段等细节信息。信息主要来自字段的help_txt部分和模型方法的docstring部分。如下面图中展示:

有用的帮助信息看起来是这个样子的:

class BlogEntry(models.Model):
  """
  Stores a single blog entry, related to :model:`blog.Blog` and
  :model:`auth.User`.
  """
  slug = models.SlugField(help_text="A short label, generally used in URLs.")
  author = models.ForeignKey(
    User,
    models.SET_NULL,
    blank=True, null=True,
  )
  blog = models.ForeignKey(Blog, models.CASCADE)
  ...

  def publish(self):
    """Makes the blog entry live on the site."""
    ...

django Admin文档生成器使用详解

django Admin文档生成器使用详解

三、视图

站点内的每个URL都会在doc内享有一个页面,点击某个URL将会展示对应的视图信息。主要包括下面这些信息,请尽量丰富它们:

  • 视图功能的简单描述
  • 上下文环境,或者视图模块里的变量列表
  • 视图内使用的模板

例如:

from django.shortcuts import render

from myapp.models import MyModel

def my_view(request, slug):
  """
  Display an individual :model:`myapp.MyModel`.

  **Context**

  ``mymodel``
    An instance of :model:`myapp.MyModel`.

  **Template:**

  :template:`myapp/my_template.html`
  """
  context = {'mymodel': MyModel.objects.get(slug=slug)}
  return render(request, 'myapp/my_template.html', context)

django Admin文档生成器使用详解

四、模板标签和过滤器

所有Django内置的或者你自定义的或者第三方app提供的标签和过滤器都将在页面内展示:

django Admin文档生成器使用详解

django Admin文档生成器使用详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的一些用法分享
Oct 07 Python
跟老齐学Python之关于循环的小伎俩
Oct 02 Python
python使用super()出现错误解决办法
Aug 14 Python
Python pymongo模块用法示例
Mar 31 Python
python操作excel文件并输出txt文件的实例
Jul 10 Python
使用Django简单编写一个XSS平台的方法步骤
Mar 25 Python
python读取与处理netcdf数据方式
Feb 14 Python
pandas数据处理之绘图的实现
Jun 15 Python
python3的pip路径在哪
Jun 23 Python
使用PyWeChatSpy自动回复微信拍一拍功能的实现代码
Jul 02 Python
分享unittest单元测试框架中几种常用的用例加载方法
Dec 02 Python
python小程序之飘落的银杏
Apr 17 Python
django表单的Widgets使用详解
Jul 22 #Python
Python代码使用 Pyftpdlib实现FTP服务器功能
Jul 22 #Python
超简单的Python HTTP服务
Jul 22 #Python
对python 中re.sub,replace(),strip()的区别详解
Jul 22 #Python
django框架CSRF防护原理与用法分析
Jul 22 #Python
全面了解django的缓存机制及使用方法
Jul 22 #Python
python logging模块书写日志以及日志分割详解
Jul 22 #Python
You might like
php从完整文件路径中分离文件目录和文件名的方法
2015/03/13 PHP
PHP实现简单的新闻发布系统实例
2015/07/28 PHP
YII Framework教程之异常处理详解
2016/03/14 PHP
在Yii2特定页面如何禁用调试工具栏Debug Toolbar详解
2017/08/07 PHP
PHP获取数组中指定的一列实例
2017/12/27 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
javascript 实现子父窗体互相传值的简单实例
2014/02/17 Javascript
使用jQuery时Form表单元素ID和name命名大忌
2014/03/06 Javascript
jquery if条件语句的写法
2016/05/19 Javascript
BootStrap Progressbar 实现大文件上传的进度条的实例代码
2016/06/27 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
12条写出高质量JS代码的方法
2018/01/07 Javascript
利用Dectorator分模块存储Vuex状态的实现
2019/02/05 Javascript
vue动画效果实现方法示例
2019/03/18 Javascript
vue-cli配置全局sass、less变量的方法
2019/06/06 Javascript
JS设置自定义快捷键并实现图片上下左右移动
2019/10/17 Javascript
ant design 日期格式化的实现
2020/10/27 Javascript
快速解决vue2+vue-cli3项目ie兼容的问题
2020/11/17 Vue.js
node koa2 ssr项目搭建的方法步骤
2020/12/11 Javascript
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
浅析Python中return和finally共同挖的坑
2017/08/18 Python
Python实现1-9数组形成的结果为100的所有运算式的示例
2017/11/03 Python
python的dataframe转换为多维矩阵的方法
2018/04/11 Python
python将一个英文语句以单词为单位逆序排放的方法
2018/12/20 Python
Python3获取拉勾网招聘信息的方法实例
2019/04/03 Python
Python实现某论坛自动签到功能
2019/08/20 Python
决策树剪枝算法的python实现方法详解
2019/09/18 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
python中count函数知识点浅析
2020/12/17 Python
详解CSS3中强大的filter(滤镜)属性
2017/06/29 HTML / CSS
生物技术专业求职信
2014/06/10 职场文书
2014年向国旗敬礼活动总结
2014/09/27 职场文书
领导班子三严三实心得体会
2014/10/13 职场文书
学校拾金不昧表扬信
2015/01/16 职场文书
阿里云服务器Ubuntu 20.04上安装Odoo 15
2022/05/20 Servers