diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2013-03-04 15:47:05 -0600 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2013-03-04 15:47:05 -0600 |
commit | f415c35b4ec5aebbc46bc6602a90ca29254838d6 (patch) | |
tree | ad66f33756f393fbeca2e25864a1d969b0c4c8e1 /mediagoblin/db | |
parent | 99a54c0095ccadcebeb640cb20cb6eadb8b9a39d (diff) | |
parent | f51a416778bc71ec373fac1cbfbf7df60815b68d (diff) | |
download | mediagoblin-f415c35b4ec5aebbc46bc6602a90ca29254838d6.tar.lz mediagoblin-f415c35b4ec5aebbc46bc6602a90ca29254838d6.tar.xz mediagoblin-f415c35b4ec5aebbc46bc6602a90ca29254838d6.zip |
Merge branch 'master' into 419_cherrypick_large_uploads
Diffstat (limited to 'mediagoblin/db')
-rw-r--r-- | mediagoblin/db/migration_tools.py | 8 | ||||
-rw-r--r-- | mediagoblin/db/mixin.py | 28 |
2 files changed, 23 insertions, 13 deletions
diff --git a/mediagoblin/db/migration_tools.py b/mediagoblin/db/migration_tools.py index e5380a3b..c0c7e998 100644 --- a/mediagoblin/db/migration_tools.py +++ b/mediagoblin/db/migration_tools.py @@ -17,6 +17,9 @@ from mediagoblin.tools.common import simple_printer from sqlalchemy import Table +class TableAlreadyExists(Exception): + pass + class MigrationManager(object): """ @@ -128,7 +131,10 @@ class MigrationManager(object): # sanity check before we proceed, none of these should be created for model in self.models: # Maybe in the future just print out a "Yikes!" or something? - assert not model.__table__.exists(self.session.bind) + if model.__table__.exists(self.session.bind): + raise TableAlreadyExists( + u"Intended to create table '%s' but it already exists" % + model.__table__.name) self.migration_model.metadata.create_all( self.session.bind, diff --git a/mediagoblin/db/mixin.py b/mediagoblin/db/mixin.py index 6789a970..fdf61e8d 100644 --- a/mediagoblin/db/mixin.py +++ b/mediagoblin/db/mixin.py @@ -126,24 +126,28 @@ class MediaEntryMixin(object): """ return cleaned_markdown_conversion(self.description) - def get_display_media(self, media_map, - fetch_order=common.DISPLAY_IMAGE_FETCHING_ORDER): - """ - Find the best media for display. + def get_display_media(self): + """Find the best media for display. - Args: - - media_map: a dict like - {u'image_size': [u'dir1', u'dir2', u'image.jpg']} - - fetch_order: the order we should try fetching images in + We try checking self.media_manager.fetching_order if it exists to + pull down the order. Returns: - (media_size, media_path) + (media_size, media_path) + or, if not found, None. + """ - media_sizes = media_map.keys() + fetch_order = self.media_manager.get("media_fetch_order") + + # No fetching order found? well, give up! + if not fetch_order: + return None + + media_sizes = self.media_files.keys() - for media_size in common.DISPLAY_IMAGE_FETCHING_ORDER: + for media_size in fetch_order: if media_size in media_sizes: - return media_map[media_size] + return media_size, self.media_files[media_size] def main_mediafile(self): pass |