Python 将临时值与appengine模型查询集关联
以下是我的模型: 我有两个表Python 将临时值与appengine模型查询集关联,python,google-app-engine,webapp2,Python,Google App Engine,Webapp2,以下是我的模型: 我有两个表match和team: class Match(DictModel): date_time = db.DateTimeProperty() team1 = db.StringProperty() team2 = db.StringProperty() venue = db.StringProperty() result = db.IntegerProperty() class Team(DictModel): tslu
match
和team
:
class Match(DictModel):
date_time = db.DateTimeProperty()
team1 = db.StringProperty()
team2 = db.StringProperty()
venue = db.StringProperty()
result = db.IntegerProperty()
class Team(DictModel):
tslug = db.StringProperty()
name = db.StringProperty()
matches_played = db.IntegerProperty()
matches_won = db.IntegerProperty()
rating = db.FloatProperty()
在运行时,当向其中一个处理程序函数发出post请求时,我希望动态地将团队评级与Match
的queryset关联,并发送值,我尝试这样做:
matches = Match.all()
matches.filter('date_time <=', end)
matches.filter('date_time >=', start)
match_dict = functs.create_dict(matches)
self.response.out.write(match_dict)
麻烦:我在setattr
中得到错误,而不是setattr
我也尝试了m.rating1=te1
和m.rating2=te2
,但即使这样也似乎不起作用。其他一切都在完美地工作
请帮忙,谢谢 语法为setattr(m,'rating1',te1.rating1);但这与m.rating1=te1.rating1没有区别
我们可以追溯一下吗?“我发现了错误”是毫无帮助的。当你“得到错误”时,请在你的问题中包含回溯。谢谢,下次就可以了。
def to_dict(self):
return dict([(p, unicode(getattr(self, p))) for p in self.properties()])
def create_dict(matches):
lst = []
for m in matches:
t1 = m.team1
t2 = m.team2
te1 = Team.all().filter("name =", t1).get()
te2 = Team.all().filter("name =", t2).get()
m.setattr('rating1', te1.rating)
m.setattr('rating2', te2.rating)
lst.append(m)
data_dict = json.dumps([l.to_dict() for l in lst])
return data_dict