Example #1
0
class Alumni(db.Model):
    __tablename__ = 'alumni'

    id = db.Column(db.String(11), primary_key=True)
    school_type = db.Column(db.String(10), nullable=False)
    gender = db.Column(db.String(1), nullable=False)
    school_city = db.Column(db.String(10), nullable=False)
    ket_lulus = db.Column(db.String(20), nullable=False)
    nilai = db.relationship('Nilai', backref='alumni', lazy=True, uselist=False)
Example #2
0
class Training(db.Model):
    __tablename__ = 'training'

    id = db.Column(db.String(11), primary_key=True)
    school_type = db.Column(db.String(10), nullable=False)
    gender = db.Column(db.String(1), nullable=False)
    school_city = db.Column(db.String(10), nullable=False)
    semester_1 = db.Column(db.Float, nullable=False)
    semester_2 = db.Column(db.Float, nullable=False)
    semester_3 = db.Column(db.Float, nullable=False)
    semester_4 = db.Column(db.Float, nullable=False)
    ipk = db.Column(db.Float, nullable=False)
    ket_lulus = db.Column(db.String(20), nullable=False)
Example #3
0
class Testing(db.Model):
    __tablename__ = 'testing'

    id = db.Column(db.String(11), primary_key=True)
    school_type = db.Column(db.String(10), nullable=False)
    gender = db.Column(db.String(10), nullable=False)
    school_city = db.Column(db.String(10), nullable=False)
    semester_1 = db.Column(db.Float, nullable=False)
    semester_2 = db.Column(db.Float, nullable=False)
    semester_3 = db.Column(db.Float, nullable=False)
    semester_4 = db.Column(db.Float, nullable=False)
    ipk = db.Column(db.Float, nullable=False)
    result = db.relationship('Hasil',
                             backref='testing',
                             lazy=True,
                             uselist=False)
Example #4
0
class Nilai(db.Model):
    __tablename__ = 'nilai'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    id_alumni = db.Column(db.String(11), db.ForeignKey('alumni.id'))
    semester_1 = db.Column(db.Float, nullable=False)
    semester_2 = db.Column(db.Float, nullable=False)
    semester_3 = db.Column(db.Float, nullable=False)
    semester_4 = db.Column(db.Float, nullable=False)
    ipk = db.Column(db.Float, nullable=False)
Example #5
0
class User(db.Model, UserMixin):
    __tablename__ = 'user'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    email = db.Column(db.String(100), nullable=False, unique=True)
    hash_password = db.Column(db.String(100), nullable=False)
    first_name = db.Column(db.String(50), nullable=False)
    last_name = db.Column(db.String(50), nullable=False)
    registered_on = db.Column(db.DateTime, nullable=False)
    phone_number = db.Column(db.String(25))
    role = db.Column(db.String(5), nullable=False, default=False)

    @property
    def password(self):
        raise AttributeError('password: write-only field')

    @password.setter
    def password(self, password):
        self.hash_password = flask_bcrypt.generate_password_hash(
            password).decode('utf-8')

    def check_admin(self, role):
        return role == 'Admin'

    def check_password(self, password):
        return flask_bcrypt.check_password_hash(self.hash_password, password)

    def __repr__(self):
        return "User {}".format(self.email)
Example #6
0
class Hasil(db.Model):
    __tablename__ = 'hasil'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    id_testing = db.Column(db.String(11), db.ForeignKey('testing.id'))
    result = db.Column(db.String(20), nullable=False)