对基于django类的视图的breadcrumbs支持

django-views-breadcrumbs的Python项目详细描述


要启用django-views-breadcrumbs,需要将views_breadcrumbs添加到INSTALLED_APPS

INSTALLED_APPS += ('views_breadcrumbs',)

要将面包屑添加到视图中,请使用breadcrumbdecorator:

from views_breadcrumbs.views import breadcrumb
...
@breadcrumb('index')
class IndexView(View):
    ...

@breadcrumb(lambda args, kwargs, context, request: context['category'].name, parent='project.views.index')
class ProductListView(ListView):
    ...

其中project.views.index是父视图的视图名称。

如果要将object(第一个)函数参数传递给父函数,则应使用parent_args。 当您通过parent_args时,父视图将不会被调度:

@breadcrumb(lambda args, kwargs, context, request: context['product'].name,
            parent='project.views.product-list',
            parent_args=lambda args, kwargs, context, request: [], {}, {'category': context['product'].category}
           )
class ProductDetailView(DetailView):
    ...

parent_args必须返回args、kwargs和context的列表,开关将传递给父breadcrumbobject参数

设置

BREADCRUMBS_TEMPLATE_CONTEXT_NAME设置为更改上下文名称(默认值为breadcrumbs):

BREADCRUMBS_TEMPLATE_CONTEXT_NAME = 'breadcrumbs'

中间件

如果要在发送面包屑分支的中间视图时收到警告 (这意味着调度的不仅是当前视图,还包括父视图),您可以使用BreadcrumbsWarningMiddleware

MIDDLEWARE_CLASSES += ('views_breadcrumbs.middleware.BreadcrumbsWarningMiddleware', )

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

推荐PyPI第三方库


热门话题
java获取TaskCompletionSource工作(Firestore的Android任务)   从PNG文件获取java或信息   neo4j嵌入式版本2.3.8的java NotInTransactionException   OSGI框架的java Eclipse启动配置在Mac上不起作用   java svn:“预提交”挂钩失败,输出错误:   java中ResourceBundle的io查询   java声明变量的最佳方法是什么?遵循下面的例子?   java如何在log4j中获得不同的记录器?   hibernate错误“java.lang.NoSuchMethodError:org.jboss.logging.Logger.getMessageLogger”   swing将JPanel保存为图像   eclipse(Java Spigot)我的PlayerInteractEvent有问题   使用java nio从FileChannel读取的字符串   java Eclipse无法清理生成输出   安卓对Eclipse java组件中的代码行数有限制吗   java Android Studio将应用程序推到手机上,不会让我   针对具有两个编辑器的页面的selenium java代码自动化   Java正则表达式:负前瞻   JavaJPA:基于实例变量将实体动态映射到表