Google App Engine:如何以编程方式访问Model类的属性?

Dav*_*kes 8 python string google-app-engine

我有一个模型类:

class Person(db.Model):
  first_name = db.StringProperty(required=True)
  last_name = db.StringProperty(required=True)
Run Code Online (Sandbox Code Playgroud)

我有一个这个类的实例p,字符串s包含值'first_name'.我想做的事情如下:

print p[s]
Run Code Online (Sandbox Code Playgroud)

p[s] = new_value
Run Code Online (Sandbox Code Playgroud)

两者都导致了TypeError.

有谁知道我怎么能达到我的意愿?

Ant*_*nen 7

如果模型类足够智能,它应该识别标准的Python方法.

尝试:

getattr(p, s)
setattr(p, s, new_value)
Run Code Online (Sandbox Code Playgroud)

还有hasattr可用.


Jim*_*Jim 1

getattr(p, s)
setattr(p, s, new_value)
Run Code Online (Sandbox Code Playgroud)