示例#1
0
class Book(db.Model):
    """Book model."""

    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(80), nullable=False)
    publish_date = db.Column(db.Date)

    # The author - Who wrote it?
    author_id = db.Column(db.Integer,
                          db.ForeignKey("author.id"),
                          nullable=False)
    author = db.relationship("Author", back_populates="books")

    # The audience - Who is this book written for?
    audience = db.Column(db.Enum(Audience), default=Audience.ALL)

    # The genres, e.g. fiction, sci-fi, fantasy
    genres = db.relationship("Genre",
                             secondary="book_genre",
                             back_populates="books")

    # Who favorited this book?
    users_who_favorited = db.relationship("User",
                                          secondary="user_book",
                                          back_populates="favorite_books")

    def __str__(self):
        return f"<Book: {self.title}>"

    def __repr__(self):
        return f"<Book: {self.title}>"
示例#2
0
class Book(db.Model):
    """Book model."""
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(80), nullable=False)
    publish_date = db.Column(db.Date)

    # The author - Who wrote it?
    author_id = db.Column(db.Integer,
                          db.ForeignKey('author.id'),
                          nullable=False)
    author = db.relationship('Author', back_populates='books')

    # The audience - Who is this book written for?
    audience = db.Column(db.Enum(Audience), default=Audience.ALL)

    # The genres, e.g. fiction, sci-fi, fantasy
    genres = db.relationship('Genre',
                             secondary='book_genre',
                             back_populates='books')

    def __str__(self):
        return f'<Book: {self.title}>'

    def __repr__(self):
        return f'<Book: {self.title}><Publish Date: {self.publish_date}>'