menu.py 1.21 KB
Newer Older
wanli's avatar
wanli committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
#!/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)