为项目部署到的每种环境类型注入可视指示器的轻量级中间件类集。

django-envi的Python项目详细描述


Introduction

一组轻量级的中间件类,为 项目部署到的每种类型的环境。灵感来自 this article

https://i.imgur.com/flSPk7w.png

Quickstart

  1. 安装程序包:pip install django-envi
  2. 'envi'应用程序添加到INSTALLED_APPS中。
  3. 将所需的中间件类安装到MIDDLEWARE_CLASSES
    • envi.middleware.EnviFooterMiddleware向 显示当前环境的所有页面。
  4. 在每个环境的设置文件中,添加ENVIRONMENT_KEY设置, 使用相应的环境键字符串。见下文。

Built-in environments

有许多内置环境定义:

  • 'local':灰色条纹横幅。显示站点范围(默认)。
  • 'dev':蓝色条纹横幅。出现在站点范围内。
  • 'staging':带条纹的黄色横幅。出现在站点范围内。
  • 'production':红色条纹横幅。只出现在/admin中。

Configuration

您的settings.py支持以下设置:

  • ENVI_ENVIRONMENT_KEY:表示用于搜索的键的字符串 ENVI_ENVIRONMENTS设置字典。默认为'local'
  • ENVI_ENVIRONMENTS:包含键值对的字典,由 映射到表示 环境定义。默认情况下,有4个built-in environments 可供选择。
  • ENVI_ENVIRONMENT:当前环境。这可以定义为 显式(请参见Creating environments),否则将设置为 通过在中查找ENVI_ENVIRONMENT_KEY来对应字典 ENVI_ENVIRONMENTS字典。

Creating environments

可以使用以下字典结构创建环境:

CUSTOM_ENV={# Required for all subclasses of EnviBaseMiddleware."SHOW_IN_ADMIN":True,"SHOW_IN_SITE":True,# Only required for subclasses of EnviBaseTemplateMiddleware."CONTEXT":{# The contents of this dictionary will be passed to the template# being rendered. You can add anything you want here."CONTENT":"ENVIRONMENT: STAGING","COLOR_A":"#ffba1e","COLOR_B":"#dba11a",},}

然后,此环境定义可以是:

  • 添加到ENVI_ENVIRONMENTS字典,并通过设置激活 将ENVI_ENVIRONMENT_KEY添加到相应的密钥。

    ENVI_ENVIRONMENTS={"custom_key_1":CUSTOM_ENV,"custom_key_2":OTHER_CUSTOM_ENV,}ENVI_ENVIRONMENT_KEY="custom_key_1"
  • 用于直接设置ENVI_ENVIRONMENT值。

    ENVI_ENVIRONMENT=CUSTOM_ENV

Advanced usage

django-envi的实现使定制变得容易。

Extending via templates

待办事项:如何。

Extending via subclassing

待办事项:如何。

Compatability

django-envi的最新版本已在以下位置进行了测试 django的版本:

  • 2.0.1
  • 1.11.9 (LTS)
  • 1.8.18 (LTS)

Changelog

VersionDescription
0.2.1Bugfix to prevent adding the banner to AJAX requests. Thanks to @marksweb for the PR. Also adds backwards compatability for Django versions < 1.10.
0.2Repackaged without unnecessary docs/images directory. All documentation can be found in README.rst.
0.1.2Fixes reference to nonexistent template. Manifest issue.
0.1.1Renamed to django-envi.
0.1Initial version.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何加载。java文件到编译器?   java写入文件和I/O   java日历返回错误的当前日期安卓   if语句if变量等于1(java)   java很难让Joda有时间使用我的bukkit插件   json如何创建基于java的应用程序,该应用程序将从网站获取输入   java如何在多页中打印大型JPanel   java my spinner在添加从firebase数据库中选择的多个值时被覆盖   java用Play框架覆盖HTTP方法   试图获取所有用户时,java错误请求400。Dto和表格   java支持bean加载图像后javascript自动调用JS函数   java在MTOM的@StreamingAttachment(Metro)中,Parsely的意思是什么   具有可抢占线程队列的多线程java执行器   Java Opencv connectedComponentsWithStats   java如何向数组中添加2D数组的数目   eclipse为什么我的Java Zork克隆不能正确循环?   java在哪里放置定制的第二个web。xml   java如何更改最近应用列表中显示的快照?   java Browser#getText()返回空字符串