コード例 #1
0
class UsersRoles(db.Model):
    __tablename__ = 'users_roles'
    id = db.Column(db.Integer(), primary_key=True)
    user_id = db.Column(db.Integer(),
                        db.ForeignKey('users.id', ondelete='CASCADE'))
    role_id = db.Column(db.Integer(),
                        db.ForeignKey('roles.id', ondelete='CASCADE'))
コード例 #2
0
class Codes_T(db.Model):
    __tablename__ = 'Codes_T'
    id = db.Column(db.Integer(), primary_key=True)
    codenumber = db.Column(db.String(50),
                           nullable=False,
                           server_default=u'',
                           unique=True)  # for @roles_accepted()
コード例 #3
0
class Role(db.Model):
    __tablename__ = 'roles'
    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.String(50),
                     nullable=False,
                     server_default=u'',
                     unique=True)  # for @roles_accepted()
    label = db.Column(db.Unicode(255),
                      server_default=u'')  # for display purposes
コード例 #4
0
class Friendship(db.Model):
    __tablename__ = 'friendships'
    id = db.Column(db.Integer(), primary_key=True)
    friender_id = db.Column(db.Integer(), db.ForeignKey('users.id', ondelete='CASCADE'))
    friendee_id = db.Column(db.Integer(), db.ForeignKey('users.id', ondelete='CASCADE'))
    friender = db.relationship("User", foreign_keys=[friender_id],
                               back_populates="friendships")
    friendee = db.relationship("User", foreign_keys=[friendee_id],
                               back_populates="cofriendships")
コード例 #5
0
class User(db.Model, UserMixin):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)

    # User authentication information (required for Flask-User)
    email = db.Column(db.Unicode(255), nullable=False, server_default=u'', unique=True)
    confirmed_at = db.Column(db.DateTime())
    password = db.Column(db.String(255), nullable=False, server_default='')
    # reset_password_token = db.Column(db.String(100), nullable=False, server_default='')
    active = db.Column(db.Boolean(), nullable=False, server_default='0')

    # User information
    active = db.Column('is_active', db.Boolean(), nullable=False, server_default='0')
    first_name = db.Column(db.Unicode(50), nullable=False, server_default=u'')
    last_name = db.Column(db.Unicode(50), nullable=False, server_default=u'')
    photo_file_name = db.Column('photo_file_name',db.String(260), nullable=True,
                                server_default='default.png')

    # Relationships
    roles = db.relationship('Role', secondary='users_roles',
                            backref=db.backref('users', lazy='dynamic'))

    friendships = db.relationship('Friendship', foreign_keys=[Friendship.friender_id])
    cofriendships = db.relationship('Friendship', foreign_keys=[Friendship.friendee_id])
    friendship_invites = db.relationship('FriendshipInvite',
                                         foreign_keys=[FriendshipInvite.friender_id])
    cofriendship_invites = db.relationship('FriendshipInvite',
                                           foreign_keys=[FriendshipInvite.friendee_id])
コード例 #6
0
ファイル: models.py プロジェクト: zhyc9de/WappalyzerApi
class Projects(db.Model):
    __tablename__ = 'projects'
    id = db.Column(db.Integer(), primary_key=True)
    url = db.Column(db.String(50), nullable=False, unique=True)
    json_http = db.Column(db.Text, nullable=True)
    json_https = db.Column(db.Text, nullable=True)
    json_last_updated = db.Column(db.DateTime())
    def __init__(self,url,json_http,json_https,json_last_updated):
        self.url = url
        self.json_http = json_http
        self.json_https = json_https
        self.json_last_updated = json_last_updated
コード例 #7
0
class Employee(db.Model):
    """
    brief : db table for storing all employees data
    """

    __tablename__ = "employee"
    
    id = db.Column(db.Integer, ForeignKey(User.id, ondelete='CASCADE'), index=True, primary_key=True)
    email = db.Column(db.String(120), ForeignKey(User.email, ondelete='CASCADE'), nullable=False, unique=True)
    manager_id = db.Column(db.Integer, ForeignKey(User.id, ondelete='CASCADE'), index=True, primary_key=True)

    def __repr__(self):     
        return '<employee: id: {0}, manager_id: {1}>'.format(self.id, self.manager_id)
コード例 #8
0
class Entry(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    user_email = db.Column(db.String(120), index=True, nullable=False)
    product_url = db.Column(db.String(128), index=True, nullable=False)
    product_title = db.Column(db.String(128), index=True, nullable=False)
    product_initial_price = db.Column(db.Float, index=True, nullable=False)

    def __repr__(self):  # This method defines how objects should be printed
        return '<Entry: user_email: {email} - product_url: {url} - product_title: {title} - product_initial_price: {initial_price}>'.format(
            email=self.user_email,
            url=self.product_url,
            title=self.product_title,
            initial_price=self.product_initial_price)
コード例 #9
0
class GraphRevision(db.Model):
    __tablename__ = 'graph_revisions'
    id = db.Column(db.Integer(), primary_key=True)
    nodes = db.Column(db.String(10 * 1000), nullable=False, server_default='')
    edges = db.Column(db.String(10 * 1000), nullable=False, server_default='')

    graph_id = db.Column(db.Integer(), db.ForeignKey('graphs.id'))
    graph = db.relationship('Graph', foreign_keys="GraphRevision.graph_id")

    previous_revision_id = db.Column(db.Integer(),
                                     db.ForeignKey('graph_revisions.id'))

    timestamp = db.Column(db.DateTime())

    author_id = db.Column(db.Integer(), db.ForeignKey('users.id'))
    author = db.relationship('User', foreign_keys=[author_id])
    
    def string(self):
        nodes = pickle.loads(str(self.nodes))
        edges = pickle.loads(str(self.edges))
        rv = ""
        rv += "\n".join('Node label: ' + str(node['label']) + "\nNode details: " +
                        str(node['detailed']) + "\n"
                        for node in nodes)
        rv += "\n".join('Edge detail: ' + str(edge['detailed']) for edge in edges)
        return rv
コード例 #10
0
class Graph(db.Model):
    __tablename__ = 'graphs'
    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.String(50), nullable=False, server_default=u'')
    description = db.Column(db.String(1000), nullable=False, server_default=u'')

    # Relationships
    owners = db.relationship('User', secondary='users_graphs_owner', backref=db.backref('graphs_owned', lazy='dynamic'))
    helpers = db.relationship('User', secondary='users_graphs_helpers', backref=db.backref('graphs_helping', lazy='dynamic'))

    revisions = db.relationship('GraphRevision',
                                foreign_keys="GraphRevision.graph_id")

    views = db.relationship('GraphViewRevision',
                            foreign_keys="GraphViewRevision.graph_id")

    current_revision_id = db.Column(db.Integer(),
                                    db.ForeignKey('graph_revisions.id'))
    current_revision = db.relationship('GraphRevision',
                                       foreign_keys=[current_revision_id])
コード例 #11
0
class User(db.Model):
    """
    brief : db table for storing all users registered on the system
    """

    __tablename__ = "user"
    
    id = db.Column(db.Integer, unique=True, index=True, nullable=False, primary_key=True)
    email = db.Column(db.String(120), nullable=False, unique=True)
    name = db.Column(db.String(120), nullable=False)
    password_hash = db.Column(db.String(120), nullable=False)
    type = db.Column(db.Integer)   # 0 -> normal user, 1 -> admin

    def set_password(self, password):
        self.password_hash = generate_password_hash(password)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)

    def __repr__(self):     
        return '<User: id: {0}, email: {1}>'.format(self.id, self.email)
コード例 #12
0
class FriendshipInvite(db.Model):
    __tablename__ = 'friendship_invites'
    id = db.Column(db.Integer(), primary_key=True)

    friender_id = db.Column(db.Integer(),
                            db.ForeignKey('users.id', ondelete='CASCADE'),
                            nullable=False)
    friender = db.relationship("User", foreign_keys=[friender_id],
                               back_populates="friendship_invites")

    # info about the invite recipient, who may or may already already
    # have an account (e.g. 0)
    friendee_id = db.Column(db.Integer(),
                            db.ForeignKey('users.id', ondelete='CASCADE'),
                            nullable=True) # this is null or 0 if
                                           # friendee doesn't yet have
                                           # account
    # can be null if an existing account
    friendee_email = db.Column(db.String(50), nullable=True, server_default='')
    friendee = db.relationship("User", foreign_keys=[friendee_id],
                               back_populates="cofriendship_invites")

    # if friendship is confirmed
    confirmed_at = db.Column(db.DateTime(), nullable=True) 

    invited_at = db.Column(db.DateTime(), nullable=True) 
コード例 #13
0
class GraphViewRevision(db.Model):
    __tablename__ = 'graph_view_revisions'
    id = db.Column(db.Integer(), primary_key=True)

    graph_id = db.Column(db.Integer(), db.ForeignKey('graphs.id'))
    graph = db.relationship('Graph', foreign_keys=graph_id)
    
    author_id = db.Column(db.Integer(), db.ForeignKey('users.id'))
    author = db.relationship('User', foreign_keys=author_id)

    nodes = db.Column(db.String(10 * 1000), nullable=False, server_default='')
    edges = db.Column(db.String(10 * 1000), nullable=False, server_default='')

    timestamp = db.Column(db.DateTime())
コード例 #14
0
class LeaveRequest(db.Model):
    """
    brief : db table for storing all employees data
    """

    __tablename__ = "leave_request"
    
    id = db.Column(db.Integer, unique=True, index=True, nullable=False, primary_key=True)
    employee_id = db.Column(db.Integer, ForeignKey(User.id, ondelete='CASCADE'), nullable=False)
    manager_id = db.Column(db.Integer, ForeignKey(User.id, ondelete='CASCADE'), nullable=False)
    reason = db.Column(db.String(120), nullable=False)
    request_date = db.Column(DateTime, nullable=False)
    status = db.Column(db.Integer, nullable=False)  # 0 -> unanswered, 1 -> Declined, 2 -> Approved

    def __repr__(self):     
        return '<employee: id: {0}, manager_id: {1}>'.format(self.id, self.manager_id)
コード例 #15
0
class UsersGraphsHelpers(db.Model):
    __tablename__ = 'users_graphs_helpers'
    id = db.Column(db.Integer(), primary_key=True)
    user_id = db.Column(db.Integer(), db.ForeignKey('users.id', ondelete='CASCADE'))
    graph_id = db.Column(db.Integer(), db.ForeignKey('graphs.id', ondelete='CASCADE'))