class Role(db.Model): id = db.Column(db.Integer, primary_key=True) rolename = db.Column(db.String(60), nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('usuario.id')) def __repr__(self): return f'<Role {self.rolename}>'
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')) def __repr__(self): return '<Pregunta %s>' % self.text
class Respuesta(db.Model): id = db.Column(db.Integer, primary_key=True) text = db.Column(db.String(255), nullable=False) answer = db.Column(db.Boolean, nullable=False) pregunta_id = db.Column(db.Integer, db.ForeignKey('pregunta.id')) def __repr__(self): return '<Respuesta %s>' % self.text
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 Respuesta(db.Model): __tablename__ = 'respuesta' id = db.Column(db.Integer, primary_key=True) text = db.Column(db.String(255), nullable=False, unique=True) correcta = db.Column(db.Boolean, nullable=False, default=False) pregunta_id = db.Column(db.Integer, db.ForeignKey('pregunta.id')) def __repr__(self): return f'<Respuesta {self.text}>'
class Respuesta(db.Model): # campo id es el Primary Key de la tabla id = db.Column(db.Integer, primary_key=True) # Texto que tiene la respuesta text = db.Column(db.String(255), nullable=False, unique=True) # ¿Es la respuesta correcta a la Pregunta? Lo defino en este campo booleano, que no sea Nulo, y que x defecto sea False correcta = db.Column(db.Boolean, nullable=False, default=False) # Esta respuesta corresponde a una pregunta exacta, guardo el id de esa pregunta pregunta_id = db.Column(db.Integer, db.ForeignKey('pregunta.id')) def __repr__(self): return '<Respuesta %s>' % self.text
class BestTime(db.Model): id = db.Column(db.Integer, primary_key=True) usuario_id = db.Column(db.Integer, db.ForeignKey('usuario.id')) time_seconds = db.Column(db.Integer, nullable=False) date = db.Column(db.Date, nullable=False) def __repr__(self): return '<Best Time %s>' % self.usuario_id def save(self): bestTime = BestTime.query.filter_by(usuario_id=self.usuario_id).first() if bestTime and bestTime.time_seconds > self.time_seconds: bestTime.time_seconds = self.time_seconds bestTime.date = self.date elif not bestTime: db.session.add(self) db.session.commit() def usuario_name(self): return Usuario.query.filter_by(id=self.usuario_id).first().name def time(self): return str(datetime.timedelta(seconds=self.time_seconds))
class Role(db.Model): id = db.Column(db.Integer, primary_key=True) rolename = db.Column(db.String(60), nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('trivia_user.id'))