Ошибка при создании книги webapi

Подскажите, где я ошибся? Возможно, ошибка банальная, но я её не вижу.

Ссылка на репозиторий:

Ошибка:

sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such table: books

[SQL: INSERT INTO books (title, author, genre) VALUES (?, ?, ?)] [parameters: ('test', 'test', 'test')] (Background on this error at: https://sqlalche.me/e/20/e3q8)


Ответы (2 шт):

Автор решения: geo

Разбирайтесь, как вам создать таблицу book. Пример создания ниже:

import sqlite3

__db = 'lib.db' # it is simple emulation
__table = 'books'

__create_table_sql = (
    f'create table if not exists {__table}'
    f'('
    f'title text,'
    f'author text,'
    f'genre text'
    f')'
)

__insert_sql = f'insert into {__table} values(?,?,?)'

conn = sqlite3.connect(__db)
cur = conn.cursor()
cur.execute(__create_table_sql) #!!! create table, before using clause insert
cur.execute(__insert_sql,('test', 'test', 'test')) #you insert
→ Ссылка
Автор решения: Lamantine
class User(Base):
    __tablename__ = "users"
    id = Column(Integer, primary_key=True, index=True)
    user_name = Column(String, unique=True, index=True)
    get_books = relationship("GetBook", back_populates="user")


class Book(Base):
    __tablename__ = "books"
    id = Column(Integer, primary_key=True, index=True)
    title = Column(String, index=True)
    author = Column(String, index=True)
    genre = Column(String, index=True)
    get_books = relationship("GetBook", back_populates="book")  


class GetBook(Base):  
    __tablename__ = "get_books"
    id = Column(Integer, primary_key=True, index=True)
    user_id = Column(Integer, ForeignKey("users.id"))
    book_id = Column(Integer, ForeignKey("books.id"))
    get_book_date = Column(DateTime)
    status = Column(String, index=True)
    user = relationship("User", back_populates="get_books")
    book = relationship("Book", back_populates="get_books")


Base.metadata.create_all(bind=db_manager.create_engine())
→ Ссылка