Django ORM 的内省接口。
项目描述
django.contrib.admin最有用的部分之一是能够配置接触和更改数据的各种视图。django-admin2 使用现代基于类的视图完全重写了该库,并享受专注于可扩展性和适应性的设计。通过重新开始,我们可以避免遗留代码并更容易编写扩展和主题。
完整文档位于:https ://django-admin2.readthedocs.io/
特征
重写 Django Admin 后端
插入式主题
内置 RESTful API
要求
姜戈 1.7+
Python 2.7+ 或 Python 3.3+
狮身人面像(用于文档)
安装
使用 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 网址添加到您的 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。
因此,您的设置需要包括以下内容:
# 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 迁移
现在明确定义了主题,包括默认主题。因此,您的设置需要包括以下内容:
# In settings.py
INSTALLED_APPS += ('djadmin2.themes.djadmin2theme_default',)
ADMIN2_THEME_DIRECTORY = "djadmin2theme_default"
插入式主题
默认主题是最新的引导程序。具体来说:
# 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 行为准则。
遵循最佳实践
该项目遵循 Django 的两个勺子: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
添加迁移
移除南迁
将 IPAddressField 替换为 GenericIPAddressField
修复用户管理员中的密码链接
修复用户在密码更改时注销
修复测试
放弃对低于 1.8 的 django 版本的支持
删除旧的 url.patterns
0.6.1 (2014-02-26)
修复空表单显示
添加了更明确的安装说明
添加了迁移说明
添加了“registry”和“app_verbose_names”的视图描述
如果没有可见字段,则显示漂亮的消息和边距
更新了 Django 1.6 更改的小部件控件。
为无法实例化的管理视图提供更好的错误消息
在 MANIFEST 中添加了 png glyphicons
0.6.0 (2013-09-12)
实施 LogHistory 以跟踪最近的历史记录
用于向 ModelAdmin2 对象添加新视图的新系统
修复了缺失的 enctype=”multipart/form-data” 功能
实现了“应用详细名称”
应用程序可以有自定义名称
可以设置列表操作,因此它们不需要选择模型
实现了 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
为 List 和 Detail 视图实现了 BooleanField 图标
实现了默认的django.contrib.auth和django.contrib.sites注册
在列表视图中实现了详细字段/方法名称的显示
在默认主题中实现了模型列表字段的客户端排序
实施改进的内部命名约定
改进的示例项目主页
改进的内部测试覆盖率
主题中的上下文变量的文档
更正了早期的命名决定
大大提高了国际化
将 django-admin2 添加到 Transifex
法语、波兰语、斯洛伐克语、中文、德语、加泰罗尼亚语、意大利语和西班牙语的翻译。
0.4.0 (2013-06-30)
实现了基于函数和基于类的操作视图
实现了 ModelAdmin2.list_display
实现了 ModelAdmin2.fieldsets
下拉小部件现在显示选定的选项
在 ModelAdmin2.list_display 中添加了对可调用对象的支持
在 README 中添加了屏幕截图
添加了第二个示例项目
固定面包屑
默认主题:正确关闭模板和媒体块
默认主题:默认主题模板中的标准化缩进
默认主题:指向 JQuery 的 CDN
默认主题:为登录表单添加了基本样式
默认主题:国际化所有文本字符串
0.3.0 (2013-05-31)
通过 floppyforms 的 HTML5 表单。
许多 API 改进。
添加了面包屑。
添加了登录、注销、更改密码视图。
添加了操作。
添加了对内联的支持。
添加了基于视图的权限控制
为子模型实施删除确认。
Testrunner 现在可以在特定的测试集或模块上运行。
内部代码重构以遵循标准。
移至 git-flow 以接受拉取请求。
模型创建/更新页面现在有保存选项。
为所有模板添加了 i18n,大部分是内部代码。
所有打印语句都替换为正确的日志记录。
文档中指定的设计目标。
0.2.0 (2013-05-19)
诞生!(工作原型)
易于扩展的 API,遵循与 django.contrib.admin 类似的模式。
由 django-rest-framework 提供支持的内置 RESTFUL API。
基于 Twitter Bootstrap 构建的默认主题。
易于实现的主题系统。
基本权限控制。
测试人员
文档
0.1.1 (2013-05-17)
来自 django-mongonaut 的代码采用。
准备 Django Circus 冲刺。
0.1 (2013-05-13)
与 Russell Keith-Magee 讨论。
成立。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
django_admin2-0.7.1 -py2-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b0e268c12a63adcc1af78fe7dc446e1503cd065511a363012b97692a5d3241ac |
|
MD5 | e5707fd4140ff1141de594cc7ff9ba0a |
|
布莱克2-256 | 800c5064cba6f6a3f547e30dac319360b0cee7094aa38f5025ebcfc1df805d8e |