0

我正在为我们的在线商店重新设计模板(使用带有 NVelocity 视图引擎的 Castle Monorail),但想为某些用户提供旧布局。

我已经开始向 PropertyBag 添加一个变量,该变量确定用户应该获得的版本并将布局设置为“BaseLayout.vm”,如下所示:

#if($StoreVersion == 2)
    #parse("VersionTwo/DefaultLayout.vm")
#else
    #parse('VersionOne/DefaultLayout.vm')
#end

这适用于布局,从技术上讲,我可以在每个模板文件中使用这种方法,但这似乎有点冗长。有没有更好的方法可以机械化这个?

4

2 回答 2

2

您可以将条件放入代码中并在控制器中设置 LayoutName 属性,而不是让布局有条件地“转发”到其他布局。

于 2011-11-30T14:10:43.680 回答
0

我会创建一个控制器过滤器并根据您的逻辑覆盖要呈现的布局名称

于 2011-12-12T16:19:38.667 回答