0
目前我有3個數據存儲類數據建模的AppEngine
用戶 事件 車間
每個車間是參照一個事件,每個事件只有四個車間
在用戶類我有一個列出我參考每個用戶所屬的研討會的關鍵字的屬性。
我希望每個用戶只能成爲一個研討會活動的一部分。
@classmethod
def event_attendance(self, user):
workshop1 = self.workshops.filter('workshop_number =', 1).get(keys_only = True)
users1 = User.all().filter('attendance =', workshop1.key()).fetch(149)
if user in users1:
return True
else:
workshop2 = self.workshops.filter('workshop_number =', 2).get(keys_only = True)
users2 = User.all().filter('attendance =', workshop2.key()).fetch(149)
if user in users2:
return True
else:
workshop3 = self.workshops.filter('workshop_number =', 3).get(keys_only = True)
users3 = User.all().filter('attendance =', workshop3.key()).fetch(149)
if user in users3:
return True
else:
workshop4 = self.workshops.filter('workshop_number =', 4).get(keys_only = True)
users4 = User.all().filter('attendance =', workshop4.key()).fetch(149)
if user in users4:
return True
else:
return False
在這裏,我去了一個事件,看閹用戶在任一車間就讀,是與下面的方法看看他們在車間裏招收了此事件來查明哪一個。
@classmethod
def My_Event(self, user):
workshop1 = self.workshops.filter('workshop_number =', 1).get(keys_only = True)
users1 = User.all().filter('attendance =', workshop1.key()).fetch(149)
if user in users1:
return workshop1
else:
workshop2 = self.workshops.filter('workshop_number =', 2).get(keys_only = True)
users2 = User.all().filter('attendance =', workshop2.key()).fetch(149)
if user in users2:
return workshop2
else:
workshop3 = self.workshops.filter('workshop_number =', 3).get(keys_only = True)
users3 = User.all().filter('attendance =', workshop3.key()).fetch(149)
if user in users3:
return workshop3
else:
workshop4 = self.workshops.filter('workshop_number =', 4).get(keys_only = True)
users4 = User.all().filter('attendance =', workshop4.key()).fetch(149)
if user in users4:
return workshop4
我很新,其實新的節目(主要是自學)
到AppEngine上考慮到我要的每一個事件去了這個方法,如果一個用戶連接,這種感覺非常昂貴,有沒有一種方法可以更有效地使用我當前的數據建模結構或者我應該更改它?
我正在以一個非常迂迴的方式去做,結束了做就像你所說的那樣。 – Jesse