Django ORM的观察性界面。
项目描述
django.contrib.admin中最有用的部分之一是配置各种视图的功能,这些视图可以触摸和修改数据。django-admin2是该库的完全重写,使用了现代的基于类的视图,并注重可扩展性和适应性。从头开始,我们可以避免遗留代码,并使编写扩展和主题变得更加容易。
完整文档请访问:https://django-admin2.readthedocs.io/
特性
Django Admin后端的重写
直接插入的主题
内置RESTful API
要求
Django 1.7+
Python 2.7+ 或 Python 3.3+
Sphinx(用于文档)
安装
使用pip从PyPI安装
pip install django-admin2
将djadmin2和rest_framework添加到您的设置文件中
INSTALLED_APPS = (
...
'djadmin2',
'rest_framework', # for the browsable API templates
...
)
在您的设置文件中添加应用程序和默认主题的设置
# In settings.py
INSTALLED_APPS += ('djadmin2.themes.djadmin2theme_bootstrap3',)
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 10
}
ADMIN2_THEME_DIRECTORY = "djadmin2theme_bootstrap3"
将djadmin2 URL添加到您的URLconf中
# urls.py
from django.conf.urls import include
from djadmin2.site import djadmin2_site
djadmin2_site.autodiscover()
urlpatterns = [
...
url(r'^admin2/', include(djadmin2_site.urls)),
]
如何编写django-admin2模块
# myapp/admin2.py
# Import your custom models
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from django.contrib.auth.models import User
from djadmin2.site import djadmin2_site
from djadmin2.types import ModelAdmin2
from .models import Post, Comment
class UserAdmin2(ModelAdmin2):
# Replicates the traditional admin for django.contrib.auth.models.User
create_form_class = UserCreationForm
update_form_class = UserChangeForm
# Register each model with the admin
djadmin2_site.register(Post)
djadmin2_site.register(Comment)
djadmin2_site.register(User, UserAdmin2)
从0.6.x迁移
默认主题已更新为bootstrap3,请确保替换为新版本。
Django rest framework也包含多个分页系统,目前只支持PageNumberPagination。
因此,您的settings需要包括以下内容
# In settings.py
INSTALLED_APPS += ('djadmin2.themes.djadmin2theme_bootstrap3',)
ADMIN2_THEME_DIRECTORY = "djadmin2theme_bootstrap3"
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 10
}
默认的admin2站点已移动到djadmin2.site,请确保在urls.py中使用新的djadmin2_site。
# urls.py
from django.conf.urls import include
from djadmin2.site import djadmin2_site
djadmin2_site.autodiscover()
urlpatterns = [
...
url(r'^admin2/', include(djadmin2_site.urls)),
]
从0.5.x迁移
主题现在被显式定义,包括默认主题。因此,您的settings需要包括以下内容
# In settings.py
INSTALLED_APPS += ('djadmin2.themes.djadmin2theme_default',)
ADMIN2_THEME_DIRECTORY = "djadmin2theme_default"
直接插入的主题
默认主题是最新版本的Bootstrap。具体来说
# In settings.py
INSTALLED_APPS += ('djadmin2.themes.djadmin2theme_bootstrap3',)
ADMIN2_THEME_DIRECTORY = "djadmin2theme_bootstrap3"
如果您创建了一个新主题,您可以这样定义它
# In settings.py
# Mythical theme! This does not exit... YET!
INSTALLED_APPS += ('djadmin2theme_foundation',)
ADMIN2_THEME_DIRECTORY = "djadmin2theme_foundation"
行为准则
在django-admin2项目的代码库、问题跟踪器、聊天室和邮件列表中互动的每个人都被期望遵守Jazzband行为准则。
遵循最佳实践
本项目遵循在Two Scoops of Django: Best Practices for Django 1.8中宣扬的最佳实践。
历史
0.7.0 (2016-11-16)
修复Django 1.8的问题并添加1.9、1.10兼容性
更新django-rest-framework到3.3.x
删除django-crispy-forms和django-floppyforms
重新生成示例项目以使其与Django 1.9兼容
更新tox和travis并添加flake8
将AdminModel2Mixin重命名为Admin2ModelMixin
添加迁移
删除south迁移
将IPAddressField替换为GenericIPAddressField
修复用户管理员中的密码链接
修复密码更改时的用户注销问题
修复测试
停止支持低于1.8的Django版本
删除旧的url.patterns
0.6.1 (2014-02-26)
修复空表单显示
添加了更详细的安装说明
添加了迁移说明
为“注册”和“app_verbose_names”添加了视图描述
如果没有可见字段,则显示漂亮的信息和边距
更新了Django 1.6更改的控件
为无法实例化的admin视图提供了更好的错误信息
将png图标添加到MANIFEST
0.6.0 (2013-09-12)
实现了LogHistory以跟踪最近的历史
为ModelAdmin2对象添加了新的视图添加系统
修复了缺少enctype="multipart/form-data"功能的问题
实现了“app verbose name”
应用程序可以有自定义的名称
可以将列表操作设置为不需要选择模型
实现了ModelAdmin2.ordering
为了保持API一致性,将views.AdminView的“url”参数重命名为“regex”
实现了ModelAdmin2.date_hierarchy
将主题系统更改为使默认主题遵循与第三方主题相同的规则。
内联现在分为堆叠和表格格式
代码覆盖率现在显示在README中
用户列表页面现在显示所有默认列和过滤器
大幅改进文档
将django.utils.encoding.force_str转换为unicode以处理边缘情况
setup.py修复
0.5.1 (2013-07-14)
0.5.0 (2013-07-08)
实现了可定制的值渲染器
实现了使用django-filters的列表过滤器。大大超过了Django提供的内容。
实现了ModelAdmin2.save_on_top和ModelAdmin2.save_on_bottom
实现了列表和详细视图中的布尔字段图标
实现了默认的django.contrib.auth和django.contrib.sites注册
实现了在列表视图中显示详细的字段/方法名称
实现了默认主题中模型列表字段的客户端排序
实现了改进的内部命名规范
改进了示例项目首页
提高了内部测试覆盖率
在主题中实现了上下文变量的文档
纠正了早期的命名决策
国际化的改进很多
将django-admin2添加到Transifex
法语、波兰语、斯洛伐克语、中文、德语、加泰罗尼亚语、意大利语和西班牙语的翻译。
0.4.0 (2013-06-30)
实现了基于函数和类的操作视图
实现了ModelAdmin2.list_display
实现了ModelAdmin2.fieldsets
下拉小部件现在显示选定的选项
在ModelAdmin2.list_display中添加了对可调用对象的支持
在README中添加了截图
添加了第二个示例项目
修复了面包屑导航
默认主题:正确关闭模板和媒体块
默认主题:在默认主题模板中标准化缩进
默认主题:指向CDN的JQuery
默认主题:添加了登录表单的基本样式
默认主题:国际化所有文本字符串
0.3.0 (2013-05-31)
通过floppyforms实现了HTML5表单。
许多API改进。
添加了面包屑。
添加了登录、注销、更改密码视图。
添加了操作。
添加了对内联的支持。
添加了基于视图的权限控制
为子模型实现了删除确认
Testrunner现在可以运行特定的测试集或模块。
对内部代码进行了重构以符合标准。
转移到git-flow以接受拉取请求。
模型创建/更新页面现在有保存选项。
将i18n添加到所有模板,大部分内部代码。
所有打印语句都被适当的记录替换。
在文档中指定了设计目标。
0.2.0 (2013-05-19)
出生!(工作原型)
易于扩展的API,遵循与django.contrib.admin相似的模式。
内置的RESTFUL API由django-rest-framework提供支持。
默认主题基于Twitter Bootstrap。
易于实现的主题系统。
基本的权限控制。
测试运行器
文档
0.1.1 (2013-05-17)
从django-mongonaut中采纳代码。
为Django Circus sprint做准备。
0.1 (2013-05-13)
与Russell Keith-Magee进行讨论。
起源。
项目详情
下载文件
下载您平台的文件。如果您不确定要选择哪个,请了解更多关于安装包的信息。
源分布
构建分发
django-admin2-0.7.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8a9e4e4fd55098f6e4425bc8a34e7a3d35af81476a750da77972c452e6452c72 |
|
MD5 | faf1956dcd3c7698ed9e661d11eadb43 |
|
BLAKE2b-256 | 3c8751f8e5b499e7eb0cdfd7d20678ebe976a04f86ba125ec9b298382ff18c45 |
django-admin2-0.7.1-py2-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b0e268c12a63adcc1af78fe7dc446e1503cd065511a363012b97692a5d3241ac |
|
MD5 | e5707fd4140ff1141de594cc7ff9ba0a |
|
BLAKE2b-256 | 800c5064cba6f6a3f547e30dac319360b0cee7094aa38f5025ebcfc1df805d8e |