Django项目的实用工具和实用程序
项目描述
django-pragmatic
Django项目的实用工具和实用程序
在Django 1.5到Django 1.10.2上进行了测试
需求
Django
一些实用工具需要额外的库,例如
django_filters
fpdf
Pillow/PIL
pyBarcode
安装
使用pip安装python库:pip install django-pragmatic
将 pragmatic 添加到您的Django设置文件中的 INSTALLED_APPS
使用方法
模板
- pragmatic/helpers/breadcrumbs.html
django-breadcrumbs应用模板辅助函数。
- pragmatic/helpers/confirm_delete.html
删除确认表单。
- pragmatic/helpers/messages.html
django消息框架模板辅助函数。
- pragmatic/helpers/pagination.html
在ListViews中分页对象的模板辅助函数。
- pragmatic/helpers/pagination-listview.html
在ListViews中分页对象的模板辅助函数。
- maintenance_mode.html
维护模式模板。请参阅下面的 MaintenanceModeMiddleware。
上下文处理器
- def date_formats(request)
从设置文件返回一个懒惰的“日期格式”上下文变量 DATE_FORMAT_JS, DATE_FORMAT_TAG, DATE_FORMAT_FULLMONTH_TAG。
- def installed_apps(request)
返回一个懒惰的“INSTALLED_APPS”上下文变量。
装饰器
- def permissions_required(app_label, login_url=None, raise_exception=False)
用于检查视图用户是否至少启用了一个应用权限的装饰器,如果需要,则重定向到登录页面。如果提供了 raise_exception 参数,则抛出 PermissionDenied 异常,并将缺少权限的应用标签存储在用户实例中。
- def permission_required(perm, login_url=None, raise_exception=False)
用于检查用户是否启用了特定权限的装饰器,如果需要,则重定向到登录页面。如果提供了 raise_exception 参数,则抛出 PermissionDenied 异常,并将缺少的权限存储在用户实例中。
- def receiver_subclasses(signal, sender, dispatch_uid_prefix, **kwargs)
用于将接收器和所有接收器子类连接到信号的装饰器。
字段
- class RangeField(forms.Field)
表单字段,期望输入是一个数字或数字范围(用“-”分隔的两个数字)。
- class MultiSelectField(models.Field)
模型字段,将多个选择存储为逗号分隔的值列表,使用正常的 CHOICES 属性。
- class MultiSelectFormField(forms.MultipleChoiceField)
用于上述模型字段(MultiSelectField)的表单字段。
- class TruncatedModelChoiceField(forms.ModelChoiceField)
模型选择字段,它截断实例标签中的溢出字符并添加“…”代替它们。
过滤器
- class TruncatedModelChoiceFilter(forms.ModelChoiceField)
用于 TruncatedModelChoiceField 的过滤器字段。
- class OneFieldRangeFilter(django_filters.Filter)
用于 RangeField 的过滤器字段。
中间件
- class MaintenanceModeMiddleware(object)
查找 settings.MAINTENANCE_MODE 属性。如果设置为 True,则对每个请求渲染模板 maintenance_mode.html。
日志处理器
- class AlternativeAdminEmailHandler(AdminEmailHandler)
与 django.utils.log 中的 AdminEmailHandler 相同,但使用 ALTERNATE_EMAIL_HOST_PASSWORD, ALTERNATE_EMAIL_HOST_USER, ALTERNATE_EMAIL_HOST, ALTERNATE_EMAIL_PORT 和 ALTERNATE_EMAIL_USE_TLS 作为连接设置。
混入
- class ReadOnlyFormMixin(forms.BaseForm)
将“readonly”和“disabled”属性添加到 read_only 表单属性中指定的字段。
- class DeleteObjectMixin(object)
用于对象删除确认的混入。实现 get_parent() 方法或 get_success_url() 和 get_back_url() 方法。
- class PickadateFormMixin(object)
混入,用于修复 pickadate.js 输入并添加 data-value 属性,如果您使用自己的日期格式。
- class FPDFMixin(object)
用于在 Django 中使用 fpdf 库生成 PDF 输出的混入辅助器。
小部件
- class GroupedCheckboxSelectMultiple(CheckboxSelectMultiple)
高级表单字段小部件,可以将多个选项分组到自定义组中。与 static/js/grouped-checkboxes.js 一起使用。
第三方
- class BarcodeImageWriter(ImageWriter)
barcode.writer.ImageWriter 的固定版本。
项目详情
django-pragmatic-5.0.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 73673854815b6e1df227e06fadb33303ca2a8ae747fcb2d30c4881cb5dfc886c |
|
MD5 | b278cf2c553cb87f6d9110cf61effcf6 |
|
BLAKE2b-256 | d699bf1eb199735b24b138730fb77645540112275928ab318a2a651f51cfbe5a |