添加新功能以补充django标记

django-tagging-ext的Python项目详细描述


django-tagging给你标记。django标记ext增强了 显示标记。所有呈现的html都是通过模板完成的,因此您可以自定义 根据需要显示

Django Tagging Ext的未来版本将包括以下功能:

  • More comprehensive tests
  • Tag dispatching so you can control tagging more tightly. For example, limiting tags to just one model.
  • Tag Auto-complete

依赖关系

django标记

可选依赖项

皮纳克斯0.7.x 皮纳克斯0.9+

安装

标记发布:

pip install django-tagging-ext

开发版本:

pip install -e git+git://github.com/pydanny/django-tagging-ext.git#egg=django-tagging-ext

添加到django settings.py文件:

INSTALLED_APPS = (
    ...
    'tagging_ext',
)

通过根url conf查看渲染

django标记ext的设计使得所有工作都在根url文件中完成。

在项目url conf(urls.py)中:

# django-tagging-ext url definitions
from blog.models import Post
from bookmarks.models import BookmarkInstance
from photos.models import Image
from tagging.models import TaggedItem

tagged_models = (
  dict(title="Blog Posts",
    query=lambda tag : TaggedItem.objects.get_by_model(Post, tag).filter(status=2),
  ),
  dict(title="Bookmarks",
    query=lambda tag : TaggedItem.objects.get_by_model(BookmarkInstance, tag),
  ),
  dict(title="Photos",
    query=lambda tag: TaggedItem.objects.get_by_model(Image, tag).filter(safetylevel=1),
  ),
)

tagging_ext_kwargs = {
  'tagged_models':tagged_models,
  # You can add your own special template to be the default
  #'default_template':'custom_templates/special.html'
}

urlpatterns += patterns('',
  url(r'^tags/(?P<tag>.+)/(?P<model>.+)$', 'tagging_ext.views.tag_by_model',
        kwargs=tagging_ext_kwargs, name='tagging_ext_tag_by_model'),
  url(r'^tags/(?P<tag>.+)/$', 'tagging_ext.views.tag',
        kwargs=tagging_ext_kwargs, name='tagging_ext_tag'),
  url(r'^tags/$', 'tagging_ext.views.index', name='tagging_ext_index'),
)

通过根url conf

查看pinax对象的呈现

在pinax项目url_conf(urls.py)中,我们使用custom_template字段来 显式地告诉django标记ext获取为在中使用而自定义的视图 皮纳克斯:

# django-tagging-ext url definitions
from blog.models import Post
from bookmarks.models import BookmarkInstance
from photos.models import Image
from tagging.models import TaggedItem

tagged_models = (
  dict(title="Blog Posts",
    query=lambda tag : TaggedItem.objects.get_by_model(Post, tag).filter(status=2),
    content_template="pinax_tagging_ext/blogs.html",
  ),
  dict(title="Bookmarks",
    query=lambda tag : TaggedItem.objects.get_by_model(BookmarkInstance, tag),
    content_template="pinax_tagging_ext/bookmarks.html",
  ),
  dict(title="Photos",
    query=lambda tag: TaggedItem.objects.get_by_model(Image, tag).filter(safetylevel=1),
    content_template="pinax_tagging_ext/photos.html",
  ),
)

tagging_ext_kwargs = {
  'tagged_models':tagged_models,
  # You can add your own special template to be the default
  #'default_template':'custom_templates/special.html'
}

urlpatterns += patterns('',
  url(r'^tags/(?P<tag>.+)/(?P<model>.+)$', 'tagging_ext.views.tag_by_model',
        kwargs=tagging_ext_kwargs, name='tagging_ext_tag_by_model'),
  url(r'^tags/(?P<tag>.+)/$', 'tagging_ext.views.tag',
        kwargs=tagging_ext_kwargs, name='tagging_ext_tag'),
  url(r'^tags/$', 'tagging_ext.views.index', name='tagging_ext_index'),
)

在Pinax项目中运行测试

$ pinax-admin setup_project -b social my_pinax_project $ cd my_pinax_project $ python manage.py test tagging_ext

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓在适配器类中单击国家选择器时崩溃。lang.ClassCastException:   java如何一次从一个文件中读取n个base64编码字符,并解码和写入另一个文件?   Java switch语句工作不正常   javahibernatejavax。坚持不懈反射的瞬态注释   java只获取字符串的整数值并查找第二个最大值   java如何向mavendependencyplugin提供工件列表:通过变量复制目标?   在java项目中动态存储图像   位置上的java Android空对象引用   在Java中,将一个基中的数字转换为另一个基,而不使用库   java Axis2服务和基本参数(C#客户端问题)   java Android Eclipse项目属性错误   java无法解组CXF响应负载   java更改列的值的最有效方法是什么,如果数组无限大,则查看行是否具有所有相同的值?   Java WebFlux/Reactor过滤器只在Mono<Set<String>>中找到项目的通量<List<String>>   compareTo在java中的应用   在java中,如何使用数组在一行中设置多个选择临界值?   java如何从另一个函数/方法调用变量?   java渲染图形以某种方式产生NullPointerException   excel使用java从xlsx中删除特定行