Google App Engine python - 自定义未定义

sda*_*das 5 python google-app-engine

我有一个请求映射到这个类ChatMsg它接收3个get变量,用户名,房间名和消息.但它在这最后一行失败了.

class ChatMsg(webapp.RequestHandler): # this is line 239
    def get(self):
        username = urllib.unquote(self.request.get('username'))
        roomname = urllib.unquote(self.request.get('roomname')) # this is line 242
Run Code Online (Sandbox Code Playgroud)

当它试图分配房间名时,它告诉我:

<type 'exceptions.NameError'>: name 'self' is not defined
Traceback (most recent call last):
  File "/base/data/home/apps/chatboxes/1.341998073649951735/chatroom.py", line 239, in <module>
    class ChatMsg(webapp.RequestHandler):
  File "/base/data/home/apps/chatboxes/1.341998073649951735/chatroom.py", line 242, in ChatMsg
    roomname = urllib.unquote(self.request.get('roomname'))
Run Code Online (Sandbox Code Playgroud)

究竟是怎么回事让自己没有定义

kos*_*sii 3

这应该是缩进问题。回溯显示错误不在 get() 方法中。在定义类时,您会收到 NameError 异常。尝试执行以下代码,您将得到与之前相同的异常。

class ChatMsg(object): # this is line 239
    def get(self):
        username = urllib.unquote(self.request.get('username'))
    roomname = urllib.unquote(self.request.get('roomname')) # this is line 242
Run Code Online (Sandbox Code Playgroud)