reg cmd with desc - maintain together if so ..

pull/11/head
shane.xb.qian 2019-06-11 23:28:08 +08:00
parent 8c82a4af7a
commit 796208d15f
1 changed files with 11 additions and 9 deletions

View File

@ -5,6 +5,7 @@ import sys
import os
commands = {}
commands_desc = {}
# 工具函数
@ -26,9 +27,10 @@ def check_input_username(username):
# 注册命令
def registry_command(cmd_str):
def registry_command(cmd_str, cmd_desc=''):
def decorate(func):
commands[cmd_str] = func
commands_desc[cmd_str] = cmd_desc
@wraps(func)
def wrapper(*args, **kwargs):
@ -37,7 +39,7 @@ def registry_command(cmd_str):
return decorate
@registry_command('init_db')
@registry_command('init_db', '初始化数据库')
def init_db():
from public import db
from config import BASE_DIR
@ -64,7 +66,7 @@ def init_db():
create_admin()
@registry_command('create_admin')
@registry_command('create_admin', '创建管理员账户')
def create_admin():
from apps.account.models import User
@ -84,7 +86,7 @@ def create_admin():
print('创建管理员账户成功!')
@registry_command('enable_admin')
@registry_command('enable_admin', '启用管理员账户,用于登录失败次数过多账户被禁用时使用')
def enable_admin():
from apps.account.models import User
@ -94,14 +96,14 @@ def enable_admin():
def print_usage():
print('''
cmd_desc_str = '''
usage: %s <command>
command:
init_db 初始化数据库
create_admin 创建管理员账户
enable_admin 启用管理员账户用于登录失败次数过多账户被禁用时使用
''' % sys.argv[0])
'''
for k in commands_desc.keys():
cmd_desc_str += '\t{0}\n\t\t-- {1}\n'.format(str(k), str(commands_desc.get(k) if commands_desc.get(k) else ''))
print(cmd_desc_str % sys.argv[0])
if __name__ == '__main__':