Esempio n. 1
0
class Activites(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    post_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    type = db.Column(db.String(40), nullable=False)
    timestamp = db.Column(db.DateTime, nullable=False, default=datetime.now())
    content = db.Column(db.String(8000), nullable=False)

    def __repr__(self):
        return f"Activities('{self.id}', '{self.user_id}','{self.post_id}','{self.type}','{self.timestamp}','{self.content}')"
Esempio n. 2
0
class Searches(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    search_query = db.Column(db.String(8000), nullable=False)

    def __repr__(self):
        return f"Search('{self.id}', '{self.user_id}','{self.search_query}')"
Esempio n. 3
0
class Grades(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    subject = db.Column(db.String(50), nullable=False)
    grade = db.Column(db.String(2), nullable=False)

    def __repr__(self):
        return f"Grades('{self.user_id}', '{self.subject}','{self.grade}')"
Esempio n. 4
0
class Logs(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    activity = db.Column(db.String(20), nullable=False)
    message = db.Column(db.Text, nullable=False)
    timestamp = db.Column(db.String(50), nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    def __repr__(self):
        return f"Logs('{self.activity}', '{self.message}', '{self.timestamp}')"
Esempio n. 5
0
class Posts(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    subject = db.Column(db.String(50), nullable=False)
    title = db.Column(db.String(50), nullable=False)
    content = db.Column(db.String(8000), nullable=False)

    def __repr__(self):
        return f"Posts('{self.id}', '{self.user_id}','{self.content}','{self.subject}','{self.title}')"
Esempio n. 6
0
class User(UserMixin, db.Model):
    """Class to model a User

    Args:
        UserMixin (UserMixin): This provides default implementations for the methods that Flask-Login expects user objects to have
        db (SQLAlchemy): The Database we want to use

    """
    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))
    # Relationships
    role_id = db.Column(db.Integer(), db.ForeignKey('role.id'))

    def __repr__(self):
        """To represent a User with a string

        Returns:
            string: return a string representing a user
        """
        return '<User {}>'.format(self.username)

    def set_password(self, password):
        """Set the password of the User

        Args:
            password (string): password set by the User
        """
        self.password_hash = generate_password_hash(password)

    def check_password(self, password):
        """Check if the password indicates by the User is the same as in the database

        Args:
            password (string): password set by the User

        Returns:
            boolean: True if the password matched, False otherwise.
        """
        return check_password_hash(self.password_hash, password)

    def set_default_role(self):
        """Set the default role for a User
        """
        self.role_id = 2