我正在创建一个带有分页的多步骤表单,该表单将显示Next
和Previous
按钮,具体取决于您所处的步骤。为了正确显示按钮,我需要在某个地方存储变量中的步骤总数。
我是否将其存储在请求范围中,例如REQUEST.TotalSteps = 5
或应用范围,例如APPLICATION.TotalSteps = 5
?步骤的数量很少会改变,所以我认为应用程序范围更适合,但我想最小化RAM的使用,因为我有很多东西存储在SESSION范围内。
什么是理想的选择?
答案 0 :(得分:3)
取决于您将如何真正地使用它,以及您正在使用的框架,您如何构建应用程序以及所有类似的东西。在需要它的请求期间,您只需要内存中的值,因此TBH我只是将它放在变量范围内,确保为需要它的请求加载设置该变量的代码。
您不希望将其置于会话中,因为它不是特定于访问者的值,也不是与会话有任何关联:它只是关于该表单。< / p>
同样地,它不属于应用程序范围(嗯:有警告,但鉴于你给我们的关于你如何建立你的应用程序的细节水平低,让我们来看看假设这是个案)因为 - 再次 - 它不是整个应用程序需要的东西;只是页面实际上对形成的页面感兴趣。
如果您可以向我们提供有关您的架构的更多信息,我可以对此答案进行微调,但是根据给出的信息:这几乎是您需要接近它的方式,一切都是平等的。
答案 1 :(得分:0)
会话范围用于存储特定用户的信息。应用程序范围用于存储整个应用程序可用的信息。请求范围在请求过程中存储信息。你想要SESSION范围。