Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python webapp2:获取RequestHandler类变量的值

Python webapp2:获取RequestHandler类变量的值
EN

Stack Overflow用户
提问于 2014-10-21 07:38:30
回答 2查看 457关注 0票数 0

我有一个RequestHandler的子类:

代码语言:javascript
运行
AI代码解释
复制
class GetStats(webapp2.RequestHandler):
    somevar = None
    def post(self):
        ...
        somevar = "somevalue"

并且创建了这个类的实例:

代码语言:javascript
运行
AI代码解释
复制
application = webapp2.WSGIApplication([
    ('/stats', GetStats),
], debug=True)

那么,我的问题是:我如何才能在class GetStats之外得到一些值呢?

我没有这个类的实例名。

如果不将此值保存到全局var中,就有可能吗?

一些更新:

可以创建class Route的某些实例

代码语言:javascript
运行
AI代码解释
复制
mp = webapp2.Route('/', handler=MainPage)
gs = webapp2.Route('/stats', handler=GetStats)

并以这种方式初始化application

代码语言:javascript
运行
AI代码解释
复制
application = webapp2.WSGIApplication([mp,gs], debug=True)

但是无论如何,没有GetStats类实例的名称。

在本例中有实例化吗?handler=GetStats

如何能够直接创建GetStats实例?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-24 06:14:21

对于每个请求,将创建处理程序的新实例。

解决此问题的唯一方法是在请求注册表中保存处理程序实例。

替代方式:使用webapp2注册表

代码语言:javascript
运行
AI代码解释
复制
class GetStats(webapp2.RequestHandler):
    def post(self):
        ...
        somevar = "somevalue"
        application.registry['variable'] = somevar
        ...


# outside class
application.registry.get('variable')

这样可以避免模块中的全局变量。

票数 0
EN

Stack Overflow用户

发布于 2014-10-21 07:54:06

您可以将其写入数据存储:

代码语言:javascript
运行
AI代码解释
复制
from google.appengine.ext import db

class someVarClass(db.Model):
  somevarField = db.StringProperty(required=True)

class GetStats(webapp2.RequestHandler):
    somevar = None
    def post(self):
        ...

        somevar = "somevalue"
        u = someVarClass(somevarField= somevar)
        u.put()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26490681

复制
相关文章

相似问题

需要会话的webapp2 RequestHandler单元测试

12

使用Webapp2部署GAE RequestHandler时出错

10

(GoogleAppEnginePython2.7)主线程上的webapp2 RequestHandler?

10

在requesthandler类方法中而不是在函数中处理webapp2 404错误

14

访问Requesthandler外部的变量

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档