Convert media_ids to int safely.

With this commit, "gmg deletemedia spam,12" will not raise
ValueError anymore.
This commit is contained in:
Berker Peksag 2014-05-09 23:37:49 +03:00 committed by Christopher Allan Webber
parent 25b1296ded
commit 9da03b739f

View File

@ -27,7 +27,10 @@ def parser_setup(subparser):
def deletemedia(args): def deletemedia(args):
app = commands_util.setup_app(args) app = commands_util.setup_app(args)
media_ids = set(map(int, args.media_ids.split(','))) media_ids = set([int(mid) for mid in args.media_ids.split(',') if mid.isdigit()])
if not media_ids:
print 'Can\'t find any valid media ID(s).'
sys.exit(1)
found_medias = set() found_medias = set()
filter_ids = app.db.MediaEntry.id.in_(media_ids) filter_ids = app.db.MediaEntry.id.in_(media_ids)
medias = app.db.MediaEntry.query.filter(filter_ids).all() medias = app.db.MediaEntry.query.filter(filter_ids).all()