2013-11-16 2 views
0

Когда я запускаю следующий кодPython NDB: передать переменную в качестве параметра

class Userx(ndb.Model): 
    username = ndb.StringProperty() 
    password = ndb.StringProperty() 
    date = ndb.DateTimeProperty(auto_now_add=True) 

class adduser(BaseHandler): 
    def get(self): 
      user=self.request.get("email") 
      o=Userx(parent=ndb.Key("users","key"),password="123",username=user) 
      o.put() 

Я получаю сообщение об ошибке

o=Userx(parent=ndb.Key("users","key"),password="123",username=user) 
NameError: name 'user' is not defined 
+1

К сожалению, я был неправ с моей стороны. Переменная * user * довольно четко определена. Нам понадобится больше кода и полная трассировка, чтобы помочь вам. –

ответ

1

Я не вижу ничего плохого в том, что образец кода, может быть, проблема вызвано другой частью? Косвенно, может быть? Например, следующий код, который похож на ваш, работает без каких-либо проблем.

class myc1: 
    def __init__(self,y=0,q=1,t="Spam Eggs"): 
     print y,q,t 

class myc2: 
    def get(self): 
     name1 = "Sweeney Todd" 
     myobj1 = myc1(q=5,t=name1) 


myobj2 = myc2() 
myobj2.get() 

выходы 0 5 Sweeney Todd

Вы можете разместить больше кода?

(p.s я не могу написать это как комментарий, так как у меня нет достаточных привилегий)

+0

спасибо его работа в настоящее время: D импорта CGI импорта webapp2 из google.appengine.ext импорта ОПРСА класса Book (ndb.Model): названия = ndb.StringProperty() даты = ndb.DateTimeProperty (auto_now_add = True) класс MainPage (webapp2.RequestHandler): защиту получить (само): название = "мое название" OBJ = Book (родитель = ndb.Key ("Книги", "ключ"), название = название) obj.put() self.response.write ("it's working") application = webapp2.WSGIApplication ([ ('/', MainPage), ], debug = True) –

Смежные вопросы