#!/usr/bin/env python # -*- coding: utf_8 -*- import uuid from datetime import datetime from pony.orm import PrimaryKey, Required, Optional, Set, LongStr, Json from app import config from . import fullStackDB db = fullStackDB.db class Menu(db.Entity): _table_ = "{}".format(config['TABLE_PREFIX']) + "menu" id = PrimaryKey(int, auto=True) uuid = Required(uuid.UUID, unique=True, default=uuid.uuid1, index=True) name = Optional(str) title = Required(str) path = Required(str) icon = Optional(str) hidden = Optional(bool, default=False) component = Required(str) redirect = Optional(str) parent_id = Optional(str, default="") create_at = Required(datetime, default=datetime.now) create_by = Required("User", reverse='menu_creator') # Menu与User一对一关系 update_at = Required(datetime, default=datetime.now) update_by = Required("User", reverse='menu_updater') # Menu与User一对一关系 delete_at = Optional(datetime) delete_by = Optional("User", reverse='menu_deleter') # Menu与User一对一关系 is_delete = Required(bool, default=False) sort = Optional(int, size=32, default=0) remarks = Optional(str, max_len=255, default="", nullable=True)