为django-tagging添加新功能以补充
项目描述
django-tagging 提供标签功能。django-tagging-ext 提供增强的标签显示。所有渲染的HTML都是通过模板完成的,因此您可以按需自定义显示。
Django Tagging EXT的未来版本将包括以下功能
更全面的测试
标签分派,以便您可以更紧密地控制标签。例如,将标签限制为仅一个模型。
标签自动完成
依赖关系
django-tagging
可选依赖
Pinax 0.7.x Pinax 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-tagging-ext被设计成在根urls文件中完成所有工作。
在项目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 Tagging EXT获取用于Pinax的自定义视图
# 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
项目详情
关闭
django-tagging-ext-0.3.6.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f56d834b8cdc3bbba6211dc5a6c0e264f70c799c9914395ac9449eab4997df12 |
|
MD5 | 481c78078c0b161cee27c2aa9cfdd6b5 |
|
BLAKE2b-256 | a37cfdf67c2d8815f2248b6a352d7254f2ed4b574d17640bb32152597e41ce66 |