I am using Flask and SQLAlchemy. I have a model defined like this
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String(255))
rank = Column(Integer, nullable=False)
score = Column(Integer, nullable=False)
created_at = Column('created_at', DateTime, nullable=False, server_default=func.now())
I run alembic alembic revision --autogenerate -m
and it generated a revision file which looks like this
def upgrade() -> None:
op.create_table('users',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(length=255), nullable=True),
sa.Column('rank', sa.Integer(), nullable=False),
sa.Column('score', sa.Integer(), nullable=False),
sa.Column('created_at', sa.DateTime(), server_default=sa.text('now()'),
nullable=False),
sa.PrimaryKeyConstraint('id')
)
Then I run alembic upgrade head
and get this error
AttributeError: type object 'User' has no attribute ' name'. Did you
mean: 'name'?
For reference, I have multiple tables and all others have no issues, they created successfully. What could be going wrong, please ask for more info if needed.
Thanks