raise informative error message when eagerload() etc. is called against a dynamic loader

Issue #1864 resolved
Mike Bayer repo owner created an issue

test case isn't available yet, was reproduced by calling eagerload() against a dynamic, which was already against a dynamic.

someobject.dynamic.options(eagerload('subdynamic')).all()

trace:

  for b_instance in query:
 File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/query.py",
line 1676, in instances
   rows = [process[0](process[0)(row, None) for row in fetch]
 File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/mapper.py",
line 2234, in _instance
   populate_state(state, dict_, row, isnew, only_load_props)
 File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/mapper.py",
line 2113, in populate_state
   populator(state, dict_, row)
 File "/usr/lib64/python2.6/site-packages/sqlalchemy/orm/strategies.py",
line 1109, in new_execute
   'append_without_event')
 File "/usr/lib64/python2.6/site-packages/sqlalchemy/util.py", line
1206, in __init__
   self._data_appender = getattr(data, via)
AttributeError: 'list' object has no attribute 'append_without_event'

Comments (2)

  1. Log in to comment