添加新功能以补充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第三方库


热门话题
java无法使用mainthread的上下文类加载器将web应用程序添加到@SpringBootApplication的内置Tomcat中   为什么Java递归调用不释放局部变量内存   java堆栈重设堆栈奇偶范围   java如何分组,然后使用java8流列出toMap   JavaEclipse在引导仪表板上展示了“安装本地云服务”如何解决这个问题?   java多个backpress跳过该活动   concat向流中添加两个Java8流或一个额外元素   java在ToolTipText上使用图标   调试java。jvisulavm中添加JMXConnection时的lang.SecurityException   java如何通过JavaFX中的单选按钮对最大可选复选框进行约束?   Spring引导上下文一直试图连接到JavaRMI服务器,但失败了   java Spring cache@cacheexecute匹配列表中的键?   java导出报告并使用JasperReports保存在某个位置   java发布构建失败   java在活动中隐藏特定视图   java定义由canvas2image生成的图像的属性,例如alt标记   java如何将POJO转换为JSON,反之亦然?