예제 #1
0
 def create_album(self):
     inputs = self.get_input()
     if web.ctx.method == "POST":
         name = inputs.get('name', '').strip()
         is_show = inputs.get('is_show', 0)
         album = Albums.get_or_none(Albums.name == name)
         if album:
             self.private_data["create_success"] = False
             self.private_data["create_message"] = u"相册已存在"
             return self.display("admin/create_album")
         try:
             if int(is_show) == 1:
                 albums = Albums.select().where(
                     Albums.status == 0, Albums.is_show == 1).execute()
                 for album in albums:
                     album.is_show = 0
                     album.save()
             album = Albums(name=name, is_show=is_show)
             album.save()
             self.private_data["create_success"] = True
             self.private_data["create_message"] = u"相册创建成功"
             return web.seeother(self.make_url('albums_list'))
         except Exception as e:
             log.error('create album failed%s' % traceback.format_exc())
             self.private_data["create_success"] = False
             self.private_data["create_message"] = u"创建相册失败"
             return self.display("admin/create_album")
     if web.ctx.method == "GET":
         return self.display("admin/create_album")
예제 #2
0
 def update_album(self):
     inputs = self.get_input()
     if web.ctx.method == "POST":
         name = inputs.get('name', '').strip()
         album_id = inputs.get("album_id", None)
         is_show = inputs.get('is_show', 0)
         exist_album = Albums.get_or_none(Albums.name == name)
         if exist_album and exist_album.id != album_id:
             self.private_data["update_success"] = False
             self.private_data["update_message"] = u"同名相册已存在"
             return web.seeother(
                 self.make_url('update_album', {'album_id': album_id}))
         try:
             album = Albums.get_or_none(Albums.id == int(album_id))
             if int(is_show) == 1 and album.is_show == 0:
                 albums = Albums.select().where(
                     Albums.status == 0, Albums.is_show == 1).execute()
                 for album in albums:
                     album.is_show = 0
                     album.save()
             if album:
                 Albums.update(name=name, updateTime=time(),
                               is_show=is_show). \
                     where(Albums.id == int(album_id)).execute()
                 self.private_data["update_success"] = True
                 return web.seeother(self.make_url('albums_list'))
         except Exception as e:
             log.error('create album failed%s' % traceback.format_exc())
             self.private_data["update_success"] = False
             self.private_data["update_message"] = u"更新相册失败"
             return web.seeother(
                 self.make_url('update_album', {'album_id': album_id}))
     if web.ctx.method == "GET":
         album_id = inputs.get("album_id", None)
         if not album_id or not album_id.isdigit():
             self.private_data["update_success"] = False
             self.private_data["update_message"] = u"参数有误"
             return web.seeother(self.make_url('albums_list'))
         album = Albums.get_or_none(Albums.id == int(album_id))
         if not album:
             return web.seeother(self.make_url('albums_list'))
         self.private_data["album"] = album
         return self.display("admin/update_album")