Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 金字塔框架-您可以对同一模板调用两个独立的视图函数吗_Python_Model View Controller_Pylons_Pyramid - Fatal编程技术网

Python 金字塔框架-您可以对同一模板调用两个独立的视图函数吗

Python 金字塔框架-您可以对同一模板调用两个独立的视图函数吗,python,model-view-controller,pylons,pyramid,Python,Model View Controller,Pylons,Pyramid,我在玩金字塔框架,我想知道是否有可能对同一模板调用两个视图函数: 例如: def view1(request) args1 = 'a string' return render_to_response('page.mak',{'args1'=args1}, request=request) def view2(request) args2 = 'a string 2' return render_to_response('page.mak',{'args2'=a

我在玩金字塔框架,我想知道是否有可能对同一模板调用两个视图函数:

例如:

def view1(request)
    args1 = 'a string'
    return render_to_response('page.mak',{'args1'=args1}, request=request)

def view2(request)
    args2 = 'a string 2'
    return render_to_response('page.mak',{'args2'=args2}, request=request)

因此,请注意,两者都使用page.mak模板。

是的。你为什么怀疑这会是个问题?你试过了吗?有错误吗?

是的。你为什么怀疑这会是个问题?你试过了吗?有没有出错

{'args1'=args1}

不是有效的Python

{'args1':args1}

不过是这样

{'args1'=args1}

不是有效的Python

{'args1':args1}


是的,当我在模板文件中调用参数${args2}时,我得到了一个nameErrorUndefinede,需要添加更多内容:正在使用config.add_route'new','/page'/,view='myproject.views.view1'调用view2。也许这就是我出错的原因?如果是这种情况,调用view2的方法是什么?我不需要再次执行添加路由?您需要为模板的两个呈现指定相同的模板变量集。但是,它们不必具有相同的值。我经常使用这种技术来呈现表单页面,以创建新对象或编辑现有对象。相同的模板,不同的值。我承认我并没有真正阅读你们的代码,只是你们的问题。你的问题的答案是肯定的。但是您的代码有两个问题,Chris McDonough和dcrosta已经指出:它包含语法不正确的Python,并且在调用模板时使用了两个不同的变量名“args1”、“args2”。因为它只是一个模板,并且它可能引用了这些变量,所以在两个呈现调用中变量名应该是相同的。是的,当我在模板文件中调用参数${args2}时,我得到了一个NameErrorundefinedOne。要添加的更多内容是:正在使用config.add_route'new','/page'/,调用view1,view='myproject.views.view1'未调用view2。也许这就是我出错的原因?如果是这种情况,调用view2的方法是什么?我不需要再次执行添加路由?您需要为模板的两个呈现指定相同的模板变量集。但是,它们不必具有相同的值。我经常使用这种技术来呈现表单页面,以创建新对象或编辑现有对象。相同的模板,不同的值。我承认我并没有真正阅读你们的代码,只是你们的问题。你的问题的答案是肯定的。但是您的代码有两个问题,Chris McDonough和dcrosta已经指出:它包含语法不正确的Python,并且在调用模板时使用了两个不同的变量名“args1”、“args2”。因为它只是一个模板,并且可能引用了这些变量,所以两个呈现调用中的变量名应该相同。