delete user ok

This commit is contained in:
ridethepig 2022-11-12 20:53:35 +08:00
parent 39f8001763
commit 08bb21b8ff
5 changed files with 49 additions and 6 deletions

View File

@ -36,16 +36,17 @@ def adduser():
userlimi = request.form['userlimit'] userlimi = request.form['userlimit']
error = None error = None
if not userlimi.isdecimal(): if not userlimi.isdecimal():
error = '用户空间必须是整数KB' error = '用户空间必须是整数GB'
elif not validateEmail(usermail): elif not validateEmail(usermail):
error = 'email格式不合法' error = 'email格式不合法'
userlimi = int(userlimi)
userlimi *= 1024 * 1024 # userlimit is stored and measured by KB
if error is None: if error is None:
db = get_db() db = get_db()
try: try:
db.execute( db.execute(
'insert into user(`user_name`, `user_mail`, `user_passwd`, `user_limit`) values (?,?,?,?)', 'insert into user(`user_name`, `user_mail`, `user_passwd`, `user_limit`) values (?,?,?,?)',
(username, generate_password_hash(password), usermail, userlimi,) (username, usermail, generate_password_hash(password), userlimi,)
) )
db.commit() db.commit()
except sqlite3.IntegrityError as _e: except sqlite3.IntegrityError as _e:
@ -58,3 +59,31 @@ def adduser():
return redirect(url_for('admin.index')) return redirect(url_for('admin.index'))
flash(error) flash(error)
return render_template("admin/adduser.html") return render_template("admin/adduser.html")
@bp.route('/removeuser', methods=("GET",))
@admin_login_required
def removeuser():
error = "请求错误"
if request.method == 'GET':
error = None
uid_to_del = request.args.get("uid")
if uid_to_del is not None and uid_to_del.isdecimal:
db = get_db()
rowcnt = 0
try:
rowcnt = db.execute(
"delete from user where user.user_id=?", (uid_to_del, )
).rowcount
db.commit()
except sqlite3.IntegrityError as _e:
error = "用户未做好被删除的准备:%s" % (_e)
db.rollback()
except sqlite3.Error as _e:
error = "删除发生未知错误: %s" %(_e)
db.rollback()
if error is None:
if rowcnt != 0:
error = "删除uid为%s的用户成功!" % uid_to_del
else:
error = "由于uid不存在可能没有被删除请再次检查删除结果"
return render_template("admin/removeuser.html", remove_result=error)

View File

@ -13,7 +13,7 @@
<input name="usermail" id="usermail" required><br> <input name="usermail" id="usermail" required><br>
<label for="password">密码</label> <label for="password">密码</label>
<input type="password" name="password" id="password" required><br> <input type="password" name="password" id="password" required><br>
<label for="userlimit">用户空间大小</label> <label for="userlimit">用户空间大小(GB)</label>
<input name="userlimit" id="userlimit" required> <input name="userlimit" id="userlimit" required>
<input type="submit" value="新建用户"> <input type="submit" value="新建用户">
</form> </form>

View File

@ -10,7 +10,9 @@
<ul> <ul>
{% for user in users%} {% for user in users%}
<li> <li>
UID:{{ user['user_id'] }}, Name: {{ user['user_name'] }} UID:{{ user['user_id'] }}, 用户名: {{ user['user_name'] }},
邮箱: {{ user['user_mail'] }}, 用户空间大小: {{ user['user_limit'] / 1024 / 1024 }}GB
<a href={{"/admin/removeuser?uid=" ~ user['user_id']}}>删除</a>
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>

View File

@ -0,0 +1,12 @@
{% extends 'base.html' %}
{% block header %}
<h1>{% block title %}管理主页{% endblock %}</h1>
{% endblock %}
{% block content %}
<h2>删除用户结果</h2>
<div>
{{remove_result}}
</div>
<a href="/admin/">返回</a>
{% endblock %}

0
src/user.py Normal file
View File