SHOW:
|
|
- or go back to the newest paste.
1 | def removeAdmin(self, data): | |
2 | for properties in data: | |
3 | logging.error(properties) | |
4 | if 'profile_key' not in properties: | |
5 | logging.warning("Missing key in '%s'", properties) | |
6 | continue | |
7 | profile_key = properties['profile_key'] | |
8 | ||
9 | if 'program_key' not in properties: | |
10 | logging.warning("Missing key in '%s'", properties) | |
11 | continue | |
12 | program_key = properties['program_key'] | |
13 | program_key_new = ndb.Key.from_old_key(program_key) | |
14 | profile = profile_key.get() | |
15 | if not profile: | |
16 | logging.warning("Invalid profile_key '%s'", profile_key) | |
17 | return | |
18 | @ndb.transactional | |
19 | def remove_admin_txn(): | |
20 | #program_key_new=program_key | |
21 | logging.error(program_key) | |
22 | logging.error(profile_key) | |
23 | user = profile.key.parent() | |
24 | #user=user_model.User.query(user_model.User.key.id() == profile.key.id()).get() | |
25 | ||
26 | if program_key_new in user.host_for: | |
27 | user.host_for.remove(program_key_new) | |
28 | user.put() | |
29 | ||
30 | remove_admin_txn() | |
31 | ||
32 | return True | |
33 | ||
34 | ERROR 2014-03-01 23:54:23,641 gae_django.py:33] Exception in request: | |
35 | Traceback (most recent call last): | |
36 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/lib/django-1.5/django/core/handlers/base.py", line 115, in get_response | |
37 | response = callback(request, *callback_args, **callback_kwargs) | |
38 | File "/home/kira111/shikher111-melange-soc/build/soc/views/base.py", line 482, in __call__ | |
39 | return self._dispatch(data, check, mutator) | |
40 | File "/home/kira111/shikher111-melange-soc/build/soc/views/base.py", line 439, in _dispatch | |
41 | return self.post(data, check, mutator) | |
42 | File "/home/kira111/shikher111-melange-soc/build/soc/modules/gsoc/views/program.py", line 388, in post | |
43 | if ProgramAdminsList(data.request, data, links.SOC_LINKER, urls.UrlNames).post(): | |
44 | File "/home/kira111/shikher111-melange-soc/build/soc/modules/gsoc/views/program.py", line 303, in post | |
45 | return self.removeAdmin(parsed) | |
46 | File "/home/kira111/shikher111-melange-soc/build/soc/modules/gsoc/views/program.py", line 320, in removeAdmin | |
47 | program_key_new = ndb.Key.from_old_key(program_key) | |
48 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/google/appengine/ext/ndb/key.py", line 583, in from_old_key | |
49 | return cls(urlsafe=str(old_key)) | |
50 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/google/appengine/ext/ndb/key.py", line 212, in __new__ | |
51 | self.__reference = _ConstructReference(cls, **kwargs) | |
52 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/google/appengine/ext/ndb/utils.py", line 136, in positional_wrapper | |
53 | return wrapped(*args, **kwds) | |
54 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/google/appengine/ext/ndb/key.py", line 640, in _ConstructReference | |
55 | serialized = _DecodeUrlSafe(urlsafe) | |
56 | File "/home/kira111/shikher111-melange-soc/thirdparty/google_appengine/google/appengine/ext/ndb/key.py", line 790, in _DecodeUrlSafe | |
57 | return base64.b64decode(urlsafe.replace('-', '+').replace('_', '/')) | |
58 | File "/usr/lib/python2.7/base64.py", line 76, in b64decode | |
59 | raise TypeError(msg) | |
60 | TypeError: Incorrect padding |