首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在context_processors.py中调用函数

在context_processors.py中调用函数
EN

Stack Overflow用户
提问于 2014-01-08 00:24:57
回答 1查看 383关注 0票数 1

在我的context_processors.py页面中,我试图将一个值从一个函数传递到另一个函数,但是它不起作用,我不明白为什么它不能工作。

下面是我的context_processors.py页面代码:

代码语言:javascript
复制
def get_current_page_value(request):
    if request.get_full_path() == settings.MENU_DETAIL_LINK_AA_DETAILS:
        return {'current_page_value02':settings.MENU_DETAIL_VALUE_AA_DETAILS}
    elif request.get_full_path() == settings.MENU_DETAIL_LINK_BB_DETAILS:
        return {'current_page_value02':settings.MENU_DETAIL_VALUE_BB_DETAILS}
    else:
        return {'current_page_value02':settings.MENU_DETAIL_VALUE_CC_DETAILS}


def resume_menu_list(request):
    if not request.user.is_authenticated():
        return {}
    try:
        current_page_val = current_page_value02

如何将current_page_value02值从get_current_page_value(request)传递给resume_menu_list(request)

我在“设置”页面中声明了以下值:

代码语言:javascript
复制
'X.core.context_processors.get_current_page_value',
'X.core.context_processors.resume_menu_list',
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-08 01:09:52

如果要访问函数返回的值,则必须调用它。

代码语言:javascript
复制
get_current_page_value()

这将返回一个字典,然后您可以访问各个键。

代码语言:javascript
复制
get_current_page_value()['current_page_value02']

因此,您可以在上下文处理器中包括get_current_page_value()['current_page_value02']

上下文处理器确实应该是不同的,而不是相互依赖的。如果您确实在上下文处理器中调用了get_current_page_value函数,那么它将被调用两次--一次作为上下文处理器,一次在resume_menu_list中。这对我来说似乎不对,但我不知道该提出什么建议,因为我不明白你到底想要达到什么目的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20984789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档