crappy looking declarative error when bad mapper arg is passed

Issue #2884 resolved
Mike Bayer repo owner created an issue
from sqlalchemy import *
from sqlalchemy.orm import *
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class A(Base):
    __tablename__ = 'a'

    id = Column(Integer, primary_key=True)

    __mapper_args__ = {"bogus": "bogus"}



Traceback (most recent call last):
  File "test3.py", line 7, in <module>
    class A(Base):
  File "/Users/classic/dev/sqlalchemy/lib/sqlalchemy/ext/declarative/api.py", line 53, in __init__
    _as_declarative(cls, classname, cls.__dict__)
  File "/Users/classic/dev/sqlalchemy/lib/sqlalchemy/ext/declarative/base.py", line 292, in _as_declarative
    mt.map()
  File "/Users/classic/dev/sqlalchemy/lib/sqlalchemy/ext/declarative/base.py", line 376, in map
    **mapper_args
TypeError: Error when calling the metaclass bases
    <lambda>() got an unexpected keyword argument 'bogus'

Comments (2)

  1. Log in to comment