My model base class is like below
from sqlalchemy.ext.declarative import as_declarative
from sqlalchemy.ext.declarative import declared_attr
@as_declarative()
class Base:
__name__: str
# to generate tablename from classname
@declared_attr
def __tablename__(cls) -> str:
return cls.__name__.lower()
And my model ( using sqlmodel pattern) looks like below
from typing import Optional
from sqlmodel import Field
import Base
class Product(Base):
id: Optional[int] = Field(None, primary_key=True)
name: str
Now when I am starting my application for table creation its complaining
sqlalchemy.exc.ArgumentError: Mapper mapped class Product->product could not assemble any primary key columns for mapped table 'product'