Problema con relaciones en sqlobject
Luis Miguel Morillas
morillas en gmail.com
Vie Mayo 12 02:08:25 CEST 2006
Alquien ve algo mal en este ejemplo?
from sqlobject import *
connection_string="sqlite:/:memory:"
connection = connectionForURI(connection_string)
sqlhub.processConnection = connection
class Clasea(SQLObject):
valor = StringCol()
relaciones = ForeignKey('Claseb')
class Claseb(SQLObject):
valor = StringCol()
relacion = MultipleJoin('Clasea')
Clasea.createTable()
Claseb.createTable()
b1 = Claseb(valor='hola')
a1 = Clasea(valor='adios', relaciones= b1)
>>> a1.relaciones
<Claseb 1 valor='hola'>
>>> b1.relacion
1/QueryAll: SELECT id FROM clasea WHERE claseb_id = 1
1/QueryR : SELECT id FROM clasea WHERE claseb_id = 1
1/COMMIT : auto
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "<string>", line 1, in <lambda>
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/joins.py",
line 131, in performJoin
inst.id)
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/dbconnection.py",
line 598, in _SO_selectJoin
return self.queryAll("SELECT %s FROM %s WHERE %s = %s" %
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/dbconnection.py",
line 316, in queryAll
return self._runWithConnection(self._queryAll, s)
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/dbconnection.py",
line 217, in _runWithConnection
val = meth(conn, *args)
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/dbconnection.py",
line 309, in _queryAll
self._executeRetry(conn, c, s)
File "/usr/lib/python2.4/site-packages/SQLObject-0.7.1dev_r1457-py2.4.egg/sqlobject/dbconnection.py",
line 295, in _executeRetry
return cursor.execute(query)
pysqlite2.dbapi2.OperationalError: no such column: claseb_id
¿Por qué busca el atributo claseb_id?
Saludos,
--
Luis Miguel
Más información sobre la lista de distribución Python-es