#2122: catwalk (in sprox.saormprovider) fails when including user in group
creation
------------------------+---------------------------------------------------
Reporter: clemens | Owner: faide
Type: defect | Status: new
Priority: normal | Milestone:
Component: TurboGears | Version: 1.9.x
Severity: normal | Keywords: catwalk sprox
------------------------+---------------------------------------------------
Action:
* new virtualenv --no-site-packages on Ubuntu 8.10
* cd tg_env; source bin/activate
* fresh install of tg-2.0b1 following
http://www.turbogears.org/2.0/docs/main/DownloadInstall.html
* paster quickstart demo # with auth
* cd demo
* paster setup-app development.ini
* paster serve development.ini
* browse to localhost:8080
* login
* browse to /admin
* select "Group"
* select "add"
* enter "newgroup" "newgroup" manager
* click "Submit"
Expected result:
* group "newgroup" added with member manager
Actual result:
InvalidRequestError: Invalid column expression '<function return_cls at
0xa06617c>'
Selecting permissions during group creation works fine if I don't also
select a User.
Traceback:
Module catwalk.tg2.controller:137 in create view
<< params = pylons.request.params.copy()
self.provider.create(model, params=kw)
raise redirect('../')
>> self.provider.create(model, params=kw)
Module sprox.saormprovider:220 in create view
<< setattr(obj, key, value)
self.session.add(obj)
self.create_relationships(obj, params)
self.session.flush()
return obj
>> self.create_relationships(obj, params)
Module sprox.saormprovider:205 in create_relationships view
<< for value in params[relation]:
if value is not None:
target_obj =
self.session.query(target).get(value)
if target_obj is not None:
if prop.uselist:
>> target_obj = self.session.query(target).get(value)
Module sqlalchemy.orm.scoping:121 in do view
<< def instrument(name):
def do(self, *args, **kwargs):
return getattr(self.registry(), name)(*args, **kwargs)
return do
for meth in Session.public_methods:
>> return getattr(self.registry(), name)(*args, **kwargs)
Module sqlalchemy.orm.session:908 in query view
<< """Return a new ``Query`` object corresponding to this
``Session``."""
return self._query_cls(entities, self, **kwargs)
def _autoflush(self):
>> return self._query_cls(entities, self, **kwargs)
Module sqlalchemy.orm.query:93 in __init__ view
<< for ent in util.to_list(entities):
_QueryEntity(self, ent)
self.__setup_aliasizers(self._entities)
>> _QueryEntity(self, ent)
Module sqlalchemy.orm.query:1778 in __init__ view
<< column = column.__clause_element__()
elif not isinstance(column, sql.ColumnElement):
raise sa_exc.InvalidRequestError("Invalid column
expression '%r'" % column)
else:
self._result_label = getattr(column, 'key', None)
>> raise sa_exc.InvalidRequestError("Invalid column expression '%r'" %
column)
InvalidRequestError: Invalid column expression '<function return_cls at
0xa06617c>'
--
Ticket URL: <http://trac.turbogears.org/ticket/2122>
TurboGears <http://www.turbogears.org/>
TurboGears front-to-back web development
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "TurboGears Tickets" group.
This group is read-only. No posting by normal members allowed.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/turbogears-tickets?hl=en?hl=en
-~----------~----~----~----~------~----~------~--~---