diff options
Diffstat (limited to 'test/ext')
| -rw-r--r-- | test/ext/mypy/files/mixin_w_tablename.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/ext/mypy/files/mixin_w_tablename.py b/test/ext/mypy/files/mixin_w_tablename.py new file mode 100644 index 000000000..cfbe83d35 --- /dev/null +++ b/test/ext/mypy/files/mixin_w_tablename.py @@ -0,0 +1,27 @@ +# test #6937 +from sqlalchemy import Column +from sqlalchemy import Integer +from sqlalchemy.orm import declarative_base +from sqlalchemy.orm import declared_attr +from sqlalchemy.orm import Mapped + + +Base = declarative_base() + + +class UpdatedCls: + @declared_attr + def __tablename__(cls) -> Mapped[str]: + return cls.__name__.lower() + + updated_at = Column(Integer) + + +class Bar(UpdatedCls, Base): + id = Column(Integer(), primary_key=True) + num = Column(Integer) + + +Bar.updated_at.in_([1, 2, 3]) + +b1 = Bar(num=5, updated_at=6) |
