class Usuario(db.Model, UserMixin): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(64), unique=True, nullable=False) email = db.Column(db.String(64), unique=True, nullable=False) password_hash = db.Column(db.String(128), nullable=False) is_admin = db.Column(db.Boolean) tiempos = db.relationship('BestTime', backref='usuario', lazy='dynamic') roles = db.relationship('Role', backref='usuario', lazy='dynamic') 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 '<Usuario: {}>'.format(self.email) def save(self): if not self.id: db.session.add(self) db.session.commit() @staticmethod def get_by_id(id): return Usuario.query.get(id) @staticmethod def get_by_email(email): return Usuario.query.filter_by(email=email).first()
class User(db.Model, UserMixin): __tablename__ = 'trivia_user' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), nullable=False) email = db.Column(db.String(256), unique=True, nullable=False) password = db.Column(db.String(128), nullable=False) roles = db.relationship('Role', backref='user', lazy='dynamic') def __repr__(self): return '<User {} - Email {}>'.format(self.name, self.email) def set_password(self, password): self.password = generate_password_hash(password) def check_password(self, password): return check_password_hash(self.password, password) def is_admin(self): return self.is_admin def save(self): if not self.id: db.session.add(self) db.session.commit() @staticmethod def get_by_id(id): return User.query.get(id) @staticmethod def get_by_email(email): return User.query.filter_by(email=email).first()
class Usuario(db.Model, UserMixin): __tablename__ = 'usuario' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(32), nullable=False) email = db.Column(db.String(64), nullable=False, unique=True) password = db.Column(db.String(128), nullable=False) roles = db.relationship('Role', backref='user', lazy='dynamic') #is_admin = db.Column(db.Boolean) def set_password(self, password): self.password = generate_password_hash(password) def check_password(self, password): return check_password_hash(self.password, password) def __repr__(self): return f'<Usuario {self.name} Email: {self.email}>' def save(self): if not self.id: db.session.add(self) db.session.commit() @staticmethod def get_by_id(id): return Usuario.query.get(id) @staticmethod def get_by_email(email): return Usuario.query.filter_by(email=email).first()
class Pregunta(db.Model): id = db.Column(db.Integer, primary_key=True) text = db.Column(db.String(255), nullable=False, unique=True) categoria_id = db.Column(db.Integer, db.ForeignKey('categoria.id')) respuestas = db.relationship('Respuesta', backref='pregunta', lazy='dynamic') def __repr__(self): return '<Pregunta %s>' % self.text
class Categoria(db.Model): id = db.Column(db.Integer, primary_key=True) descripcion = db.Column(db.String(64), index=True, unique=True) preguntas = db.relationship('Pregunta', backref='categoria', lazy='dynamic') def __repr__(self): return '<Categoria: {}>'.format(self.descripcion)