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学习笔记(一)(基础入门之环境搭建)
Jun 05 Python
Saltstack快速入门简单汇总
Mar 01 Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 Python
python中利用Future对象回调别的函数示例代码
Sep 07 Python
Python的SimpleHTTPServer模块用处及使用方法简介
Jan 22 Python
python3.6+opencv3.4实现鼠标交互查看图片像素
Feb 26 Python
DRF跨域后端解决之django-cors-headers的使用
Jan 27 Python
Python3 max()函数基础用法
Feb 19 Python
Python如何在DataFrame增加数值
Feb 14 Python
python读取hdfs上的parquet文件方式
Jun 06 Python
pandas分批读取大数据集教程
Jun 06 Python
Python自带的IDE在哪里
Jul 01 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
解析smarty 截取字符串函数 truncate的用法介绍
2013/06/20 PHP
php实现的获取网站备案信息查询代码(360)
2013/09/23 PHP
PHP的PDO预定义常量讲解
2019/01/24 PHP
理解Javascript_10_对象模型
2010/10/16 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
2013/09/30 Javascript
jquery实现类似淘宝星星评分功能实例
2014/09/12 Javascript
javascript使用appendChild追加节点实例
2015/01/12 Javascript
如何用js 实现依赖注入的思想,后端框架思想搬到前端来
2015/08/03 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
JS截取字符串实例详解
2015/11/24 Javascript
Ajax实现不刷新取最新商品
2017/03/01 Javascript
nodejs结合socket.io实现websocket通信功能的方法
2018/01/12 NodeJs
详解React中setState回调函数
2018/06/14 Javascript
bootstrap-table实现表头固定以及列固定的方法示例
2019/03/07 Javascript
深入浅析vue全局环境变量和模式
2020/04/28 Javascript
prettier自动格式化去换行的实现代码
2020/08/25 Javascript
python 文件与目录操作
2008/12/24 Python
python异步任务队列示例
2014/04/01 Python
跟老齐学Python之玩转字符串(2)更新篇
2014/09/28 Python
python实现简易动态时钟
2018/11/19 Python
python实现电子产品商店
2019/02/26 Python
pyqt5 键盘监听按下enter 就登陆的实例
2019/06/25 Python
python 判断linux进程,并杀死进程的实现方法
2019/07/01 Python
对django 2.x版本中models.ForeignKey()外键说明介绍
2020/03/30 Python
在pycharm中创建django项目的示例代码
2020/05/28 Python
Django+Uwsgi+Nginx如何实现生产环境部署
2020/07/31 Python
html2canvas生成清晰的图片实现打印的示例代码
2019/09/30 HTML / CSS
德国高性价比网上药店:medpex
2017/07/09 全球购物
销售工作人员的自我评价分享
2013/11/10 职场文书
后勤岗位职责
2013/11/26 职场文书
《颐和园》教学反思
2014/02/26 职场文书
户外活动策划方案
2014/03/12 职场文书
民政局副局长民主生活会个人对照检查材料
2014/09/19 职场文书
2015年实习单位评语
2015/03/25 职场文书
2015年治庸问责工作总结
2015/07/27 职场文书