暂无描述

qiniu.py 2.0KB

    # -*- coding: utf-8 -*- import logging import os from django_six import CompatibilityBaseCommand, close_old_connections from integral.models import SaleclerkSubmitLogInfo from utils.qiniucdn import upload_file_path from utils.redis.connect import r from utils.redis.rkeys import QINIU_UPLOAD_LIST logger = logging.getLogger('console') class Command(CompatibilityBaseCommand): def handle(self, *args, **options): logger.info('Upload image qiniu is dealing') while True: # r.rpushjson(QINIU_UPLOAD_LIST, { # 'model': 'SaleclerkSubmitLogInfo', # 'pk': 'pk', # }) k, v = r.blpopjson(QINIU_UPLOAD_LIST, 60) if not v: continue logger.info(v) model, pk = v.get('model', ''), v.get('pk', '') close_old_connections() if model == 'SaleclerkSubmitLogInfo': try: ssli = SaleclerkSubmitLogInfo.objects.get(pk=pk) except SaleclerkSubmitLogInfo.DoesNotExist: continue is_upload_qiniu = True if ssli.image: try: if os.path.exists(ssli.image.path): upload_file_path(ssli.image.path, key=ssli.image.name, bucket='tamron') os.remove(ssli.image.path) except Exception: is_upload_qiniu = False if ssli.code_image: try: if os.path.exists(ssli.code_image.path): upload_file_path(ssli.code_image.path, key=ssli.code_image.name, bucket='tamron') os.remove(ssli.code_image.path) except Exception: is_upload_qiniu = False ssli.is_upload_qiniu = is_upload_qiniu ssli.save() close_old_connections()