def test_friend(): #u1,u2,u3,u4,u5 = MbaUser(u'u1'), MbaUser(u'u2'), MbaUser(u'u3'), \ # MbaUser(u'u4'), MbaUser(u'u5') u1,u2,u3,u4,u5 = Student(u'u1'), Student(u'u2'), Student(u'u3'), \ Student(u'u4'), Student(u'u5') u1.friends = [u2, u3] u4.friends = [u2, u5] u3.friends.append(u5) DBSession.add_all([u1,u2,u3,u4,u5]) DBSession.flush() print 'u2 all', u2.all_friends print 'u5 all', u5.all_friends
def view_my_meetups(context, request): user = get_user(request) jquery.need() generated = DBSession.query(InvitationCode).filter_by(sender_id=user.id).all() if not generated: # TODO: 根据用户组的权限生成相应数量的注册码,暂时为10个 # print user.groups count = 10 toadd = [] import hashlib import datetime def generate_invitation_code(ii): # TODO: F**k! I don't care about the code collision right now! code = str(user.id * 100 + ii) strcode = hashlib.md5(code).hexdigest() return strcode[:6].upper() now = datetime.datetime.now(tz=None) for i in range(count): code = generate_invitation_code(i) expiration = now + datetime.timedelta(days = 7*(i+1)) toadd.append( InvitationCode(code=code, sender_id=user.id, receiver_id=None, expiration=expiration ) ) DBSession.add_all(toadd) DBSession.flush() generated = DBSession.query(InvitationCode).filter_by(sender_id=user.id).all() return {'invitationcode': generated}