Django扩展库
django-boost的Python项目详细描述
django boost
使用django促进开发的扩展库
安装
pip install django-boost
或
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
添加应用程序
设置.py
INSTALLED_APPS=[...'django_boost',]
用例
自定义用户
电子邮件用户
设置.py
...AUTH_USER_MODEL='django_boost.EmailUser'...
替换django默认用户模型
登录时使用电子邮件地址而不是用户名
摘要电子邮件用户
fromdjango.dbimportmodelsfromdjango_boost.modelsimportAbstractEmailUserclassCustomUser(AbstractEmailUser):is_flozen=models.BoolField(default=False)homepage=models.URLField()
当您要向电子邮件用户添加字段时可用
模型混合
uuidmodelmixin
fromdjango.dbimportmodelsfromdjango_boost.modelsimportUUIDModelMixinclassStock(UUIDModelMixin):name=models.CharField(max_length=128)count=models.IntegerField()
将id
从autofield
替换为uuifield
时间戳模型混合
fromdjango.dbimportmodelsfromdjango_boost.models.mixinsimportTimeStampModelMixinclassStock(TimeStampModelMixin):name=models.CharField(max_length=128)count=models.IntegerField()
添加了posted\u at
和updated\u at
字段。
posted_at=models.DateTimeField(auto_now_add=True)updated_at=models.DateTimeField(auto_now=True)
联合收割机
fromdjango.dbimportmodelsfromdjango_boost.models.mixinsimportUUIDMixin,TimeStampMixinclassStock(UUIDModelMixin,TimeStampModelMixin):name=models.CharField(max_length=128)count=models.IntegerField()
模型混音也可以这样组合。
字段
颜色代码字段
pip install django-boost
0
保存十六进制颜色代码字符串,包括。
如果指定upper=true
,则保存的文本将大写。
另一方面,指定lower=true将使保存的字符串小写。
不能同时指定两者。
如果两者都未设置,则保存字符串时不做任何更改。
默认值为upper=false
,lower=flase
中间件
重定向更正主机名中间件
设置.py
pip install django-boost
1
将所有访问重定向到 当 这在迁移域时很有用 最初应该使用nginx和apache之类的服务器软件来完成,但当设置很麻烦或使用heroku之类的服务时,它很有用 设置.py 必须使用稍后介绍的httpstatuscode异常。 为其他状态代码以及django的标准http404提供异常correct\u host中指定的域
异常debug=true
HttpStatusCodeExceptionMiddleware
2
pip install django-boost
httpstatuscode异常
pip install django-boost
3
必须设置要使用的HttpStatusCodeExceptionMiddleware 如果给定用户代理,如 这些信息是使用用户代理获取的
限制http请求的内容类型。 根据http头的 如果不允许内容类型,则将返回http415响应。 限制访问时间。 您可以通过重写 您可以指定在不满足 您可以使用url查询字符串中的 您可以通过更改 将 如果无法确定用户代理,则将使用 json的 您可以访问从客户机在 如果您用于api,建议使用下面的jsonview 以json格式返回响应 如果只想将内容类型限制为json,请指定 如果您用于api,建议使用下面的jsonview 与表单输入内容匹配的条件的对象。
或mixin以添加获取查询集的方法。 django_boost通用视图(
在上面的例子中,我们只返回发送的json字符串的原样。 提供轻松创建链接到模型的crudview。 在模板中,您可以按如下方式使用。 URL的名称是在小写模型类名的命名空间下定义的。 在模板中,您可以按如下方式使用。 使python内置函数在djangotemplate中可用。 isiterable filter如果过滤可重复对象,则返回true,否则返回false。 url对筛选的字符串进行编码。 与urlencode相反
用参数替换当前页面url的查询字符串。 有助于分页。 当给定迭代器对象的第一个元素时产生true,否则为false。 当给定迭代器对象的最后一个元素时产生true,否则为false。 结合 如果迭代器对象的第一个和最后一个元素为true,则为false,否则为false。模板上下文
用户代理
4
pip install django-boost
Mozilla/5.0(Macintosh;Intel Mac OS X 10_14_3)AppleWebKit/537.36(KHTML,如Gecko)Chrome/73.0.3683.86 Safari/537.36
,请为模板提供以下上下文
5
pip install django-boost
访问混音
允许ContentTypeMixin
6
pip install django-boost
内容类型
限制请求。
您可以通过指定strilly=false来禁用限制
。需要重新验证mixin
7
pip install django-boost
8
pip install django-boost
auth_unnecessary
是重新认证之前的宽限期。
可以指定int
和timedelta
,none
无
与0
相同
注销=真
,如果超过指定的时间限制,则注销注销=假
,即使超过了指定的时间限制,也不要注销有限混入
9
pip install django-boost
开始日期时间
指定访问可用的日期和时间,以及结束日期时间
指定访问可用的最后日期和时间。get_start_date time
和get_end_datetime
方法来更改可以动态访问的日期和时间。c.y/p>exception\u类
可访问的条件时要引发的异常类。
默认为http404
异常。重定向控件混合
动态直接混合
next=~
来控制重定向目的地,如loginview
0
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
redirect\u字段名来更改查询字符串参数名
a属性混合
用户代理混合
1
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
用户代理
属性分配给自身。请求
和
切换要由用户代理显示的模板文件。template\u name
中指定的模板。PC模板名称
,平板电脑模板名称
,移动模板名称
没有ARMS,但需要模板名称
。jsonrequestmixin
allowContentTypeMixin
专用mixin。
2
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
self.json中发送的json字符串解析的dictionary对象
。响应心
jsonresponsemixin
3
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
extra_context
和get_context_data
的用法与templateview
基本相同。
区别在于templateview
直接传递给模板上下文,而jsonresponsemixin
是直接响应。严格=true
。形式混合
muchedobjectgetmixin
4
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
5
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
muchedobjectmixin
提供get_object
和get_list
方法,每个方法返回与表单输入内容匹配的model object
或query set
。常规视图
扩展视图
6
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
createview
,deleteview
,detailview
,formview
,listview
,templateview
,updateview
,view
)类具有设置
和后视图处理
方法,这些在之前和之后调用。分别对视图进行r处理。设置
方法与django 2.2中添加的方法相同。jsonview
jsonresponsemixin
7
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
模型视图
视图.py
8
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
urls.py
9
git clone https://github.com/ChanTsune/Django-Boost.git
python setup.py install
INSTALLED_APPS=[...'django_boost',]
0
命名空间的情况
urls.py
INSTALLED_APPS=[...'django_boost',]
1
INSTALLED_APPS=[...'django_boost',]
2
模板标记
一些非内置函数也作为过滤器提供。例如isiterable
过滤器。增压过滤器
INSTALLED_APPS=[...'django_boost',]
3
可查看
INSTALLED_APPS=[...'django_boost',]
4
boost URL过滤器
INSTALLED_APPS=[...'django_boost',]
5
urlencode
您可以在参数中指定非转换字符。INSTALLED_APPS=[...'django_boost',]
6
urldecode
INSTALLED_APPS=[...'django_boost',]
7
boost\u url标记
替换_参数
INSTALLED_APPS=[...'django_boost',]
8
实用功能
循环实用程序
循环优先
INSTALLED_APPS=[...'django_boost',]
9
活套
...AUTH_USER_MODEL='django_boost.EmailUser'...
0
循环第一个
firstloop
和lastloop
的函数
...AUTH_USER_MODEL='django_boost.EmailUser'...
1
推荐PyPI第三方库