diff options
Diffstat (limited to 'mediagoblin/db/models.py')
-rw-r--r-- | mediagoblin/db/models.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/mediagoblin/db/models.py b/mediagoblin/db/models.py index 3fc8d9e8..37420834 100644 --- a/mediagoblin/db/models.py +++ b/mediagoblin/db/models.py @@ -127,17 +127,22 @@ class MediaEntry(Document): Use a slug if we have one, else use our '_id'. """ + uploader = self.uploader() + if self.get('slug'): return urlgen( 'mediagoblin.user_pages.media_home', - user=self['uploader']['username'], + user=uploader['username'], media=self['slug']) else: return urlgen( 'mediagoblin.user_pages.media_home', - user=self['uploader']['username'], + user=uploader['username'], media=unicode(self['_id'])) + def uploader(self): + return self.db.User.find_one({'_id': self['uploader']}) + REGISTER_MODELS = [MediaEntry, User] |