Как создать миграцию в FastAPI?

Привет) Изучаю FastAPI и столкнулся с проблемой, не могу создать миграции, хотя вроде все делаю по документации

Вот в чем беда:

Моя модель

class Post(Base):
    __tablename__ = 'posts'

    id = Column(Integer, primary_key=True, nullable=False)
    name = Column(String, nullable=False)
    content = Column(String, nullable=False)
    published = Column(Boolean, default=False)

Получаю ошибку ValueError: String is not true/false: 'true)'.

Ок, меняю __tablename__ на __table__ получаю AttributeError: 'str' object has no attribute 'c'

Что не так делаю?


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

Автор решения: ШайтанЯкубович

В SQLAlchemy есть файл langhelpers.py с методом asbool

Я закоментировал там практически все

def asbool(obj: Any) -> bool:
# if isinstance(obj, str):
#     obj = obj.strip().lower()
#     if obj in ["True", "yes", "on", "y", "t", "1"]:
#         return True
#     elif obj in ["false", "no", "off", "n", "f", "0"]:
#         return False
#     else:
#         raise ValueError("String is not true/false: %r" % obj)
  return bool(obj)

и случилось чудо, все миграции заработали. Посмотрим дальше, мб что то другое сломал)

→ Ссылка