为什么建议使用pyramid.threadlocal.get_current_request?

BDu*_*elz 2 python pyramid

我的假设是正确的请求对象不是保证结果,但我想确切地知道它为什么不明智,建议的方法是从视图函数向下传递请求对象.

Mic*_*kel 6

在请求对象进入视图后,建议您不要将"按原样"传递给任何非特定于Web的代码.处理数据库等的任何代码都不应该与金字塔的请求概念相关联.这种模式在Pyramid中更容易理解,因为它避免了全局请求对象.

请求对象包含有关调用视图的原因的所有内容,并且生成与该对象相关的更多代码将导致您在管道中进一步编写可能"过多"的函数.