manage.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:hellogithub.com 作者: 521xueweihan 项目源码 文件源码
def manage_category():
    """
    ????
    """
    if request.method == 'GET':
        category_id = request.args.get('category_id')
        if category_id:
            category_object = Category.select()\
                                      .where(Category.id == category_id)\
                                      .get()
            return jsonify(payload=model_to_dict(category_object))
        else:
            category_objects = Category.select().order_by(Category.id)
            return render_template('manage/category.html',
                                   categorys=category_objects,
                                   page_title=u'????')
    # ????
    elif request.method == 'POST':
        category_name = request.form.get('category_name', '')
        if not category_name:
            raise InvalidParams(message=u'??????????????')
        try:
            Category.create(name=category_name)
            return jsonify(message=u'?????{}???'.format(category_name))
        except IntegrityError:
            raise ParamsConflict(message=u'???????{} ???'
                                 .format(category_name))
    # ????
    elif request.method == 'PATCH':
        category_name = request.form.get('category_name')
        category_id = request.form.get('category_id')
        if not category_name:
            raise InvalidParams(message=u'???????name ????')

        try:
            Category.update(name=category_name,
                            update_time=datetime.now())\
                    .where(Category.id == category_id)\
                    .execute()
            return jsonify(message=u'???? {} ????'.format(category_name))
        except IntegrityError:
            raise ParamsConflict(message=u'???????{} ???'
                                 .format(category_name))
    # ????
    elif request.method == 'DELETE':
        category_id = request.form.get('category_id')
        category_name = request.form.get('category_name')
        try:
            content_query = Content.select()\
                                   .join(Category)\
                                   .where(Category.id == category_id)\
                                   .get()
            project_url = content_query.project_url
            raise InvalidParams(message=u'???????{project_url}????'
                                        u'???????????????'
                                .format(project_url=project_url))
        except DoesNotExist:
            Category.delete().where(Category.id == category_id).execute()
            return jsonify(message=u'?????{}???'.format(category_name))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号