Django推荐了会话信息的练习



应该在哪里处理"会话相关的东西"。例如:

# Set a session value:
request.session["fav_color"] = "blue"
# Get a session value -- this could be called in a different view,
# or many requests later (or both):
fav_color = request.session["fav_color"]

这是否应该在view中完成?在CCD_ 2中?在model?例如,如果我存储了大量会话变量,这些变量将被许多视图/页面访问,该怎么办?

会话需要一个请求对象的可用性。因此,这几乎需要以某种形式或方式在视图中处理它。整个"胖模型,瘦控制器"的咒语往往会吓跑人们不要在视图中做太多事情(本质上就是Django中的控制器)。然而,要遵循的指导原则是,业务逻辑属于模型,但视图逻辑属于视图。会话本质上是与视图相关的,所以我认为在那里使用它们没有任何问题。

你在会话中存储了多少数据是无关紧要的,至少在逻辑走向的意义上是如此。(就页面加载等而言,这确实有点重要。)

最新更新