I have the same problem right now. Seems maybe all the cases were not
covered?
I have a table 'race' that i can't load. But other tables loaded
without problem.
Code:
(Pdb) soup.meeting
class 'sqlalchemy.ext.sqlsoup.MappedMeeting'
(Pdb) soup.race
*** TypeError: type() argument 1 must be string, not unicode
Escaping to str the unicode value 'MappedRace' worked, but its a
hack ;)
svn diff sqlalchemy.svn/
Index: sqlalchemy.svn/lib/sqlalchemy/ext/sqlsoup.py
===
--- sqlalchemy.svn/lib/sqlalchemy/ext/sqlsoup.py(revision
5183)
+++ sqlalchemy.svn/lib/sqlalchemy/ext/sqlsoup.py(working copy)
@@ -445,6 +445,8 @@
selectable = expression._selectable(selectable)
mapname = 'Mapped' + _selectable_name(selectable)
if isinstance(selectable, Table):
+if isinstance(mapname, unicode):
+mapname = str(mapname)
klass = TableClassType(mapname, (object,), {})
else:
klass = SelectableClassType(mapname, (object,), {})
Code:
(Pdb) soup.race
*** TypeError: type() argument 1 must be string, not unicode
(Pdb) soup.race
class 'sqlalchemy.ext.sqlsoup.MappedRace'
So, what is the right way io fix that issue?
On Jul 13 2007, 4:29 pm, bbull [EMAIL PROTECTED] wrote:
The latest trunk seems to have fixed this issue.
Thanks
On Jul 12, 6:22 pm, jason kirtland [EMAIL PROTECTED] wrote:
bbull wrote:
I have some code that returns what I'm calling a table object.
return getattr(self.dbc, tablename)
where self.dbc is an SqlSoup object and tablename is the name of the
table.
[..]
TypeError: type() argument 1 must be string, not unicode
For some reason, the line mapname = 'Mapped' +
_selectable_name(selectable) in sqlsoup.py creates a unicode object
instead of a string object when 'entity' is passed in. If I put a
simple str() around the code (mapname = str('Mapped' +
_selectable_name(selectable))), it works with no problem.
Any reason why only this one particular case would cause this problem?
Try that again with the latest from trunk.
-j
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups
sqlalchemy group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/sqlalchemy?hl=en
-~--~~~~--~~--~--~---