Пример #1
0
def admin_user(name):
    users = Users.query.all()
    user = Users.query.filter_by(username=session.get('username')).first_or_404()
    data = {
        'user':user,
        'name':name,
        'num_user':users
    }
    if name == 'group':
        return render_template('admin/user/ugroup.html',**data)
    elif name== 'list':
        if 'id' in request.args:
            upuser = Users.query.filter_by(id=request.args['id']).first()
            if upuser:
                return render_template('admin/user/update.html',users=upuser,**data)
        return render_template('admin/user/ulist.html',users=users,**data)
    elif name in 'useradd' :
        if request.method == 'GET':
            return render_template('admin/user/add.html',**data)
        if request.method == 'POST':
            iname = request.form.get('username')
            print(iname)
            res = Users.query.filter_by(username=iname).first()
            if res:
                return render_template('admin/user/add.html',res=res,error='已经存在',**data)
            passowrd = request.form['password']
            email = request.form['email']
            anhao = request.form['anhao']
            adduser = Users(username=iname,password=passowrd,email=email,anhao=anhao)
            adduser.admin = False
            adduser.verified = True
            adduser.avatar_hash = None
            adduser.joined = datetime.now()
            db.session.add(adduser)
            db.session.commit()
            #db.session.close()
            return render_template('admin/user/add.html',res='need update',msg='添加完成',**data)
    elif name in 'userdel':
        #if request.method == "post":
        ids = request.values.get('id','')
        for i in ids:
            if i==1:
                continue
            deluser=Users.query.filter_by(id=int(i)).first()
            db.session.delete(deluser)
        db.session.commit()
        db.session.close()
        return redirect(url_for('admin.admin_user'))
    elif name in 'update':
        uid = request.args['id']
        print(uid)
        upuser = Users.query.filter_by(id=int(uid)).first()
        if uid == 1:
            return render_template('admin/user/update.html',users=upuser,error='no allow',**data)
        passwd = request.form['password']
        email = request.form['email']
        if request.form['pro_name']:
            upuser.pro_name = request.form['pro_name']
        if request.form['pro_logo']:
            upuser.pro_logo = request.form['pro_logo']
        if request.form['pro_des']:
            upuser.pro_des = request.form['pro_des']
        if passwd:
            #uppasswd = Users(name=upuser.name,
            #                 password=(passwd if passwd else upuser.password),
            #                email=(email if email else upuser.email))
            upuser.password = passwd
        if email:
            upuser.email = email
        db.session.commit()
        #db.session.close()
        uppuser = Users.query.filter_by(id=uid).first()
        return render_template('admin/user/update.html',users=uppuser,msg='Update successful',**data)
    else:
        print('id=',request.args['id'])
        userinfo = Users.query.filter_by(id=request.args['id']).first()
        return render_template('admin/user/profile.html',userinfo=userinfo,**data)