如何知道Django上下文处理器是从哪个视图调用的?
我想将字典中的一组标志传递给django模板,但我想为调用的不同视图设置不同的标志。我曾想过通过上下文处理器实现它,但我无法找到方法 比如说: 在上下文处理器中,我有:如何知道Django上下文处理器是从哪个视图调用的?,django,Django,我想将字典中的一组标志传递给django模板,但我想为调用的不同视图设置不同的标志。我曾想过通过上下文处理器实现它,但我无法找到方法 比如说: 在上下文处理器中,我有: FLAGS = { 'Flag1': False, 'Flag2': False, } 我想引入一个逻辑,即当调用view_method1时,我应该能够在将其呈现到模板之前设置标志['Flag1']=True 为了便于讨论,假设我们有以下上下文处理器: def user_context(request):
FLAGS = {
'Flag1': False,
'Flag2': False,
}
我想引入一个逻辑,即当调用view_method1时,我应该能够在将其呈现到模板之前设置标志['Flag1']=True
为了便于讨论,假设我们有以下上下文处理器:
def user_context(request):
FLAGS = {
'Flag1': False,
'Flag2': False,
}
除此之外的任何其他方法也将受到赞赏。谢谢
解决方案
view_function = resolve(request.path_info).url_name
或
您在上下文处理器中有可用的请求对象 请求对象知道
request.resolver\u match
属性中URL分派的结果:
view_function = resolve(request.path_info).func