Exemple #1
0
class President(db.Model):
    __tablename__='presidents'
    id=db.Column(db.Integer, primary_key=True )
    name=db.Column(db.Text)
    articles=db.relationship('Article', back_populates="president")
    article_id=db.Column(db.Integer, db.ForeignKey('articles.id'))
    #a president can have many articles
    keywords=db.relationship('Keyword', back_populates='president')
    keyword_id=db.Column(db.Integer, db.ForeignKey('keywords.id'))
Exemple #2
0
class Song(db.Model):
    __tablename__ = 'songs'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.Text)
    shows = db.relationship('Show',
                            secondary='show_song',
                            back_populates='songs')
    artist = db.relationship('Artist', back_populates='songs')
    artist_id = db.Column(db.Integer, db.ForeignKey('artists.id'))
Exemple #3
0
class ArticleKeyword(db.Model):
    __tablename__='articlekeywords'
    id=db.Column(db.Integer, primary_key=True )
    article_id=db.Column(db.Integer, db.ForeignKey('articles.nyt_id'))
    keyword_id=db.Column(db.Integer, db.ForeignKey('keywords.id'))
    # article=db.relationship('Article', backref="articlekeywords", cascade='all, delete-orphan', single_parent=True)
    # keyword=db.relationship('Keyword', backref="articlekeywords", cascade='all, delete-orphan', single_parent=True)
    article=db.relationship('Article', backref="articlekeywords")
    keyword=db.relationship('Keyword', backref="articlekeywords")
Exemple #4
0
class Customer(db.Model):
    __tablename__ = 'customers'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.Text)
    hometown = db.Column(db.Text)
    birthyear = db.Column(db.Integer)
    orders = db.relationship(Order, back_populates="customer", lazy="dynamic")
    bartenders = db.relationship("Bartender",
                                 secondary="orders",
                                 back_populates="customers")
Exemple #5
0
class Keyword (db.Model):
    __tablename__='keywords'
    id=db.Column(db.Integer, primary_key=True )
    category= db.Column(db.Text)
    value=db.Column(db.Text)
    # article_id=db.Column(db.String)
    # articles=db.relationship('Article', back_populates='keywords')
    president_id = db.Column(db.Integer)
    president=db.relationship('President', back_populates='keywords')
    article=db.relationship('Article', secondary='articlekeywords')
Exemple #6
0
class Manufactures(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    manufacture_name = db.Column(db.String(128), nullable=False)
    manufacture_longname = db.Column(db.String(255))
    country = db.Column(db.String(128))
    tubes = db.relationship('Tubes', backref='manufacture', lazy=True)
    generators = db.relationship('Generator', backref='manufacture', lazy=True)
    tables = db.relationship('Tables', backref='manufacture', lazy=True)
    technologies = db.relationship('Technologies',
                                   backref='manufacture',
                                   lazy=True)
    tomog = db.relationship('Tomog', backref='manufacture', lazy=True)

    def __repr__(self):
        return '{}'.format(self.manufacture_name)
Exemple #7
0
class Artist(db.Model):
    __tablename__ = 'artists'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.Text, nullable=False)
    songs = db.relationship('Song', back_populates='artist')

    def does_artist_have_show_in_country(self, countryname):
        country = Country.query.filter(Country.name == countryname).first()
        for show in country.shows:
            if show.songs[0].artist.name == self.name:
                return True
        return False

    def an_artists_number_of_countries(self):
        count = 0
        for c in Country.query.all():
            if self.does_artist_have_show_in_country(c.name):
                count += 1
        return count

    @classmethod
    def make_dict(cls):
        dict = {}
        for a in cls.query.all():
            dict.update({a.name: a.an_artists_number_of_countries()})
        return dict
Exemple #8
0
class Player(db.Model):
    __tablename__ = "players"
    id = db.Column(db.Integer, primary_key=True)
    team_id = db.Column(db.Integer, db.ForeignKey('teams.id'))
    team = db.relationship('Team', back_populates='players')
    team_code = db.Column(db.Integer)
    name = db.Column(db.String)
    position = db.Column(db.String)
    cost = db.Column(db.Float)
    total_points = db.Column(db.Integer)
    roi = db.Column(db.Float)
    bonus = db.Column(db.Integer)
    red_cards = db.Column(db.Integer)
    minutes = db.Column(db.Integer)
    status = db.Column(db.String)
    transfers_out = db.Column(db.Integer)
    transfers_in = db.Column(db.Integer)

    def to_dict(self):
        player_d = {
            'id': self.id,
            'name': self.name,
            'position': self.position,
            'cost': self.cost,
            'total_points': self.total_points,
            'roi': self.roi,
            'bonus': self.bonus,
            'red_cards': self.red_cards,
            'minutes': self.minutes,
            'status': self.status,
            'transfers_out': self.transfers_out,
            'transfers_in': self.transfers_in,
            'team': self.team.name
        }
        return player_d
Exemple #9
0
class Tomog(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    manufacture_id = db.Column(db.Integer,
                               db.ForeignKey('manufactures.id'),
                               nullable=False)
    tomog_model = db.Column(db.String(128), nullable=False)
    spiraltype = db.Column(db.String(128))
    tubecount = db.Column(db.String(128))
    gantry = db.Column(db.Integer())
    slicecount = db.Column(db.Integer())
    slice_thicness = db.Column(db.Float())
    fov_x = db.Column(db.Integer())
    fov_z = db.Column(db.Integer())
    spatial_resolution = db.Column(db.Float())
    rotation_time = db.Column(db.Float())
    fps = db.Column(db.Integer())
    room_size = db.Column(db.Float())
    performance = db.Column(db.Float())
    tube_id = db.Column(db.Integer, db.ForeignKey('tubes.id'), nullable=False)
    generator_id = db.Column(db.Integer,
                             db.ForeignKey('generator.id'),
                             nullable=False)
    table_id = db.Column(db.Integer,
                         db.ForeignKey('tables.id'),
                         nullable=False)
    technologies = db.relationship('Technologies',
                                   secondary=tomog_techno,
                                   backref=db.backref('tomog', lazy='dynamic'))
    image_id = db.Column(db.Integer, db.ForeignKey('image.id'))

    def __repr__(self):
        return '{}'.format(self.tomog_model)
Exemple #10
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(20), unique=True, nullable=False)
    image_file = db.Column(db.String(20),
                           nullable=False,
                           default="default.jpg")
    password = db.Column(db.String(60), nullable=False)
    is_admin = db.Column(db.Boolean, default=False)
    poll = db.relationship('Poll', backref='parti', lazy=True)

    def __repr__(self):
        return f"User('{self.username}','{self.email}','{self.image_file}')"

    def get_reset_token(self, expires_sec=1800):
        s = Serializer(app.config["SECRET_KEY"], expires_sec)
        return s.dumps({'user_id': self.id}).decode('utf-8')

    @staticmethod  #not to expect self
    def verify_reset_token(token):
        s = Serializer(app.config["SECRET_KEY"])
        try:
            auser_id = s.loads(token)['user_id']
        except:
            return None
        return User.query.get(user_id)
Exemple #11
0
class Path(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100))
    track = db.Column(db.Integer, db.ForeignKey('tracks.id'), nullable=False)
    rela = db.relationship('Post', backref='course', lazy=True)

    def __repr__(self):
        return f"Course({self.title},{self.track})"
Exemple #12
0
class Bartender(db.Model):
    __tablename__ = 'bartenders'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100))
    hometown = db.Column(db.String(100))
    birthyear = db.Column(db.Integer)
    customers = db.relationship("Customer",
                                secondary="orders",
                                back_populates="bartenders")
Exemple #13
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)
    password = db.Column(db.String(60), nullable=False)
    posts = db.relationship('Post', backref='author', lazy=True)

    def __repr__(self):
        return f"User('{self.username}', '{self.email}')"
Exemple #14
0
class Show(db.Model):
    __tablename__ = 'shows'
    id = db.Column(db.Integer, primary_key=True)
    fmid = db.Column(db.Text, nullable=False)
    date = db.Column(db.Text, nullable=False)
    venue = db.Column(db.Text)
    city = db.Column(db.Text)
    lat = db.Column(db.Integer)
    lng = db.Column(db.Integer)
    songs = db.relationship('Song',
                            secondary='show_song',
                            back_populates='shows')
    country_id = db.Column(db.Integer, db.ForeignKey('countries.id'))
    country = db.relationship('Country', back_populates='shows')

    @classmethod
    def venue_locations(cls):
        return {show.venue: [show.lat, show.lng] for show in Show.query.all()}
Exemple #15
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.String(128), unique=True)
    email = db.Column(db.String(128), unique=True)
    password = db.Column(db.String(128), )
    active = db.Column(db.Boolean())
    roles = db.relationship('Role',
                            secondary=role_user,
                            backref=db.backref('user', lazy='dynamic'))
Exemple #16
0
class Order(db.Model):
    __tablename__ = 'orders'
    id = db.Column(db.Integer, primary_key=True)
    customer_id = db.Column(db.Integer,
                            db.ForeignKey('customers.id'),
                            default=None)
    customer = db.relationship('Customer', back_populates="orders")
    bartender_id = db.Column(db.Integer, db.ForeignKey('bartenders.id'))

    drink_id = db.Column(db.Integer, db.ForeignKey('drinks.id'))
Exemple #17
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    login = db.Column(db.String(128), nullable=False, unique=True)
    email = db.Column(db.String(length=120))
    fullname = db.Column(db.String(128), nullable=False)
    password = db.Column(db.String(255), nullable=False)
    group_user_id = db.Column(db.Integer, db.ForeignKey('usergroup.id'))
    Claims = db.relationship('Claim',
                             primaryjoin="Claim.source_user_id==User.id",
                             foreign_keys=[Claim.source_user_id],
                             backref=db.backref('user', lazy='joined'),
                             lazy='dynamic',
                             cascade='all, delete-orphan')
    Claims_executer = db.relationship(
        'Claim',
        primaryjoin="Claim.executer_user_id==User.id",
        foreign_keys=[Claim.executer_user_id],
        backref=db.backref('executer_user', lazy='joined'),
        lazy='dynamic',
        cascade='all, delete-orphan')
Exemple #18
0
class Admin(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40), nullable=False)
    email = db.Column(db.String(40), nullable=False, unique=True)
    username = db.Column(db.String(20), nullable=False)
    password = db.Column(db.String(60), nullable=False)
    phone = db.Column(db.String(), nullable=False)
    rele = db.relationship('Post', backref='author', lazy=True)

    def __repr__(self):
        return f"Admin('{self.id}, {self.name}, {self.email}, {self.username}')"
Exemple #19
0
class Tables(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    manufacture_id = db.Column(db.Integer,
                               db.ForeignKey('manufactures.id'),
                               nullable=False)
    table_name = db.Column(db.String(128), nullable=False)
    horizont_range = db.Column(db.Integer())
    max_weight = db.Column(db.Integer())
    tomog = db.relationship('Tomog', backref='table', lazy=True)

    def __repr__(self):
        return '{}'.format(self.table_name)
Exemple #20
0
class Image(db.Model):

    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.Unicode(64), nullable=False)
    path = db.Column(db.Unicode(128), nullable=False)
    tomograph = db.relationship('Tomog', backref='image', lazy=True)

    def __unicode__(self):
        return self.name

    def __repr__(self):
        return '{}'.format(self.name)
Exemple #21
0
class Tracks(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.Text)
    intro = db.Column(db.Text)
    image = db.Column(db.String(100))
    message = db.Column(db.Text)
    paths = db.relationship('Path', backref='line', lazy=True)

    # rel = db.relationship('Post', backref = '', lazy = True)

    def __repr__(self):
        return f"Track('Track Number = {self.id}, Title = {self.title}')"
Exemple #22
0
class Article(db.Model):
    __tablename__='articles'
    id=db.Column(db.Integer, primary_key=True )
    headline=db.Column(db.Text)
    url = db.Column(db.String)
    nyt_id = db.Column(db.String)
    president_id = db.Column(db.Integer)
    word_count = db.Column(db.Integer)
    section=db.Column(db.Text)
#    num_hits=db.Column(db.Integer)
    date=db.Column(db.String)
    president=db.relationship('President', back_populates='articles')
#    section=db.relationship('Section', back_populates='articles', lazy='dynamic')
    #an article can only be in one section
    keywords=db.relationship('Keyword', secondary='articlekeywords')

    #an article could have many keywords
    def to_dict(self):
        article={'id': self.id, 'headline': self.headline, 'url':self.url, 'nyt_id': self.nyt_id,  'word_count': self.word_count, 'num_hits': self.num_hits, 'date': self.date, 'section': self.section.section_name
        # ,'keywords': [keyword.to_dict() for keyword in self.keywords]
        }
        return article
Exemple #23
0
class Generator(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    manufacture_id = db.Column(db.Integer,
                               db.ForeignKey('manufactures.id'),
                               nullable=False)
    generator_name = db.Column(db.String(128), nullable=False)
    power = db.Column(db.Integer())
    current = db.Column(db.Integer())
    voltage = db.Column(db.Integer())
    tomog = db.relationship('Tomog', backref='generator', lazy=True)

    def __repr__(self):
        return '{}'.format(self.generator_name)
Exemple #24
0
class Tubes(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    manufacture_id = db.Column(db.Integer,
                               db.ForeignKey('manufactures.id'),
                               nullable=False)
    tube_model = db.Column(db.String(128), nullable=False)
    focus = db.Column(db.String(128))
    capacity = db.Column(db.Float())
    coolingrate = db.Column(db.Float())
    servise_life = db.Column(db.Integer())
    tomog = db.relationship('Tomog', backref='tube', lazy=True)

    def __repr__(self):
        return '{}'.format(self.tube_model)
Exemple #25
0
class User(UserMixin, db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(64), index=True, unique=True)
    email = db.Column(db.String(120), index=True, unique=True)
    password_hash = db.Column(db.String(128))
    posts = db.relationship('Post', backref='author', lazy='dynamic')

    def __repr__(self):
        return '<User {}>'.format(self.username)

    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)
Exemple #26
0
class Team(db.Model):
    __tablename__ = "teams"
    id = db.Column(db.Integer, primary_key=True)
    # table_id = db.Column(db.Integer, Foreign_Key('epl_table.id'))
    code = db.Column(db.Integer)
    position = db.Column(db.Integer)
    name = db.Column(db.String)
    GP = db.Column(db.Integer)
    W = db.Column(db.Integer)
    D = db.Column(db.Integer)
    L = db.Column(db.Integer)
    points = db.Column(db.Integer)
    GF = db.Column(db.Integer)
    GA = db.Column(db.Integer)
    GD = db.Column(db.Integer)
    player_points = db.Column(db.Integer)
    logo = db.Column(db.String)
    players = db.relationship('Player', back_populates='team')

    def to_dict(self):
        team_d = {
            'id': self.id,
            'name': self.name,
            'position': self.position,
            'points': self.points,
            'GP': self.GP,
            'W': self.W,
            'D': self.D,
            'L': self.L,
            'GF': self.GF,
            'GA': self.GA,
            'GD': self.GD,
            'player_points': self.player_points,
            'logo': self.logo,
        }
        return team_d
Exemple #27
0
class Country(db.Model):
    __tablename__ = 'countries'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.Text, nullable=False)
    shows = db.relationship('Show', back_populates='country')
Exemple #28
0
class Usergroup(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    group_name = db.Column(db.String(128), nullable=False, unique=True)
    Users = db.relationship('User', backref=db.backref('usergroup', lazy=True))