一个可重用的django应用程序,带有一组用于url、视图集、命令等的实用程序
django-utils-plus的Python项目详细描述
#utils plus
一个简单的可重用django应用程序,具有多种混合和实用功能。
``命令行
pip install git://github.com/jnoottheen/django utils plus.git@master'egg=django utils plus/django utils plus/django utils plus.git@master'egg=django utils plus
````
utils
/>/>管理命令
/>
/>清除记录
/>
/>/>创建管理员
/>/>/>测试邮件
/>/>/><
/>/>/>``管理命令
/>/>/>模板标签
-klass
-unpkg
当您使用外部静态文件/库时,如bootstrap、jquery,您可能希望从cdn加载它们,而不是在生产环境中自己管理它们。
此标记可帮助您做到这一点。当"settings.debug"为false时,这将返回从
`package.json`解析为版本为'unpkg.com'的路径。否则它将在本地解析为"node_u modules"。
<;script src="{%unpkg"引导/dist/js/bootstrap.min.js%}">;
<;script src="{%unpkg"jquery/dist/jquery.min.js%}">;
````
package.json应该出现在项目根目录中。
1。当debug为true时,必须安装包,并且包应该已经在"node_u modules"中可用。
它更容易嵌套到更深的层次,并且仍然具有可读性。
它只是标准url(),include()方法后面的包装器。
p<;doc_pk>;\d+)/edit/$',editView.as_view(),name='edit-student-doc'),
url(r'^studenteditordocument/(?p<;doc_pk>;\d+)/export/$',export view.as_view(),name='export-editore-doc'),
url(r'^docs/$',docs.as_view(),name='student-documents'),
url(r'^publish/$',pulishordelete.as_view(),{'action':'publish',name="publish-document",
url(r'^delete/$",pulishordelete.as_view(),name='delete_document'),
]
>
````
>``````
.as_view(),'编辑文档')
u('export',export view.as_view(),'export doc')
u('docs',docs.as_view(),'student documents')
u('publish',pulishordelete.as_view(),'publish_document',action='publish')
u('delete',pulishordelete.as_view(),'delete_document')
urlpatterns=u.urlpatterns
`````
如果你不怕多打字,也可以这样做。不需要分别定义urlpatterns变量
``python
urls.py
urls plus.router import url
url('editor')为urlpatterns的urlpatterns.int('doc_pk'):
urlpatterns('edit',edit view.as_view(),'edit doc')
urlpatterns('export',export view.as_view(),'export doc')
urlpatterns('docs',docs.as_view(),'student documents')
urlpatterns('publish',pulishordelete.as_view(),'publish_document',action='publish')
urlpatterns('delete',pulishordelete.as_view(),"delete_document")
```
有关更多用例,请参见"tests/test_router.py"
\model
1。` checkdeletablemodelmixin`
添加一个"is_deletable"方法,该方法可用于在实际删除受影响的相关记录之前检查这些记录。
最初它是从这个[gist]复制的(https://gist.github.com/freewayz/69d1b8bcb3c225bea57bd70ee1e765f8)
2。` choicesenum`
与django orm choices字段一起使用的枚举器类
3。` querymanager`
设置select-related、prefetch-related&;筛选到QuerySet。
-这有"first_or_create"方法,类似于get_or_create
``python
from django.db import models
from utils_plus.models import querymanager
class post(models.model):
author=models.foreignkey('author')
comments=models.manytomanyfield('comment')
published=models.booleanfield()
pub\u date=models.datefield()
rel_u objects=querymanager()。selects('author').prefetches('comments')
````
\config option
1。` url_group_trail_slash`
-默认情况下,该类生成的所有url都将有尾随斜杠
-在设置中将其设置为false。py若要更改此行为
\testing
-克隆repo并运行迁移
-`fab test'将运行APP
一个简单的可重用django应用程序,具有多种混合和实用功能。
``命令行
pip install git://github.com/jnoottheen/django utils plus.git@master'egg=django utils plus/django utils plus/django utils plus.git@master'egg=django utils plus
````
utils
/>/>管理命令
/>
/>清除记录
/>
/>/>创建管理员
/>/>/>测试邮件
/>/>/><
/>/>/>``管理命令
/>/>/>模板标签
-klass
-unpkg
当您使用外部静态文件/库时,如bootstrap、jquery,您可能希望从cdn加载它们,而不是在生产环境中自己管理它们。
此标记可帮助您做到这一点。当"settings.debug"为false时,这将返回从
`package.json`解析为版本为'unpkg.com'的路径。否则它将在本地解析为"node_u modules"。
<;script src="{%unpkg"引导/dist/js/bootstrap.min.js%}">;
<;script src="{%unpkg"jquery/dist/jquery.min.js%}">;
````
package.json应该出现在项目根目录中。
1。当debug为true时,必须安装包,并且包应该已经在"node_u modules"中可用。
它更容易嵌套到更深的层次,并且仍然具有可读性。
它只是标准url(),include()方法后面的包装器。
p<;doc_pk>;\d+)/edit/$',editView.as_view(),name='edit-student-doc'),
url(r'^studenteditordocument/(?p<;doc_pk>;\d+)/export/$',export view.as_view(),name='export-editore-doc'),
url(r'^docs/$',docs.as_view(),name='student-documents'),
url(r'^publish/$',pulishordelete.as_view(),{'action':'publish',name="publish-document",
url(r'^delete/$",pulishordelete.as_view(),name='delete_document'),
]
>
````
>``````
.as_view(),'编辑文档')
u('export',export view.as_view(),'export doc')
u('docs',docs.as_view(),'student documents')
u('publish',pulishordelete.as_view(),'publish_document',action='publish')
u('delete',pulishordelete.as_view(),'delete_document')
urlpatterns=u.urlpatterns
`````
如果你不怕多打字,也可以这样做。不需要分别定义urlpatterns变量
``python
urls.py
urls plus.router import url
url('editor')为urlpatterns的urlpatterns.int('doc_pk'):
urlpatterns('edit',edit view.as_view(),'edit doc')
urlpatterns('export',export view.as_view(),'export doc')
urlpatterns('docs',docs.as_view(),'student documents')
urlpatterns('publish',pulishordelete.as_view(),'publish_document',action='publish')
urlpatterns('delete',pulishordelete.as_view(),"delete_document")
```
有关更多用例,请参见"tests/test_router.py"
\model
1。` checkdeletablemodelmixin`
添加一个"is_deletable"方法,该方法可用于在实际删除受影响的相关记录之前检查这些记录。
最初它是从这个[gist]复制的(https://gist.github.com/freewayz/69d1b8bcb3c225bea57bd70ee1e765f8)
2。` choicesenum`
与django orm choices字段一起使用的枚举器类
3。` querymanager`
设置select-related、prefetch-related&;筛选到QuerySet。
-这有"first_or_create"方法,类似于get_or_create
``python
from django.db import models
from utils_plus.models import querymanager
class post(models.model):
author=models.foreignkey('author')
comments=models.manytomanyfield('comment')
published=models.booleanfield()
pub\u date=models.datefield()
rel_u objects=querymanager()。selects('author').prefetches('comments')
````
\config option
1。` url_group_trail_slash`
-默认情况下,该类生成的所有url都将有尾随斜杠
-在设置中将其设置为false。py若要更改此行为
\testing
-克隆repo并运行迁移
-`fab test'将运行APP