Column("show_order", Integer, nullable=False, default=1), extend_existing=True ) description_detail = Table("DescriptionDetail", metadata, Column("id", Integer, primary_key=True), Column("description_type_id", Integer, ForeignKey('DescriptionType.id')), Column("description_id", Integer, ForeignKey('Description.id')), Column("item_relation_id", Integer, ForeignKey('ItemRelation.id')), Column("items_id", Integer, ForeignKey('Item.id')), Column("relation_show_order", Integer, nullable=False, default=1), Column("show_order", Integer, nullable=False, default=1), Column("content", Text, nullable=False, default=""), extend_existing=True ) metadata.create_all() from sdust_oj.models.description import (Item, ItemRelation, ItemRelationCombination, DescriptionMeta,DescriptionMetaItemRelationCombination, DescriptionType,DescriptionTypeItemRelationCombination, DescriptionDetail ) mapper(Item, item) mapper(ItemRelation, item_relation) mapper(ItemRelationCombination, item_relation_combination) mapper(DescriptionMeta, description_meta)
permissionGroup = Table("permissionGroup", metadata, Column("permission_id", Integer, ForeignKey('Permission.id'), primary_key=True, nullable=False), Column("group_id", Integer, ForeignKey('Group.id'), primary_key=True, nullable=False), ) userGroup = Table("userGroup", metadata, Column("user_id", Integer, ForeignKey('User.id'), primary_key=True, nullable=False), Column("group_id", Integer, ForeignKey('Group.id'), primary_key=True, nullable=False), ) userPermission = Table("userPermission", metadata, Column("user_id", Integer, ForeignKey('User.id'), primary_key=True, nullable=False), Column("permission_id", Integer, ForeignKey('Permission.id'), primary_key=True, nullable=False), ) metadata.create_all() # if tables don't exit, create them. from sdust_oj.models.auth import User, Permission, Group from sdust_oj.tables.problem import Submission mapper(User, user, properties={ "groups":relationship(Group, secondary=userGroup, backref="users"), "permissions":relationship(Permission, secondary=userPermission, backref="users"), "submissions":relationship(Submission, backref="user") }) mapper(Permission, permission, properties={ "groups":relationship(Group, secondary=permissionGroup, backref="permissions") }) mapper(Group, group)