Hello, error in declarative query with defer
class ClassDefaults(dec.DeclarativeMeta):
def __init__(cls, classname, bases, dict_):
dict_['id'] = Fdb.Unicode(Adb.Length(55),
Adb.Primary_Key(True), Adb.Unique(True), Adb.Nullable(False))
dict_['status'] = Fdb.Unicode(Adb.Length(10),
Adb.Index(True), Adb.Nullable(False), Adb.Default(u'ACTIVO'))
dict_['_created_at']= Fdb.DateTime(Adb.Index(True),
Adb.Nullable(False), Adb.Default(datetime.now))
dict_['_updated_at']= Fdb.DateTime(Adb.Index(True),
Adb.Nullable(False), Adb.Default(datetime.now), Adb.Onupdate
(datetime.now))
dict_['_unit_code'] = Fdb.Unicode(Adb.Length(20),
Adb.Index(True), Adb.Nullable(False), Adb.Default(u'*'))
dict_['_organization_code'] = Fdb.Unicode(Adb.Length(20),
Adb.Index(True), Adb.Nullable(False), Adb.Default(u'*'))
return dec.DeclarativeMeta.__init__(cls, classname, bases,
dict_)
BaseDefaults = declarative_base(metaclass=ClassDefaults)
BaseDefaults.metadata.bind = dataClass_active_mail.engine
Base = dec.declarative_base()
Base.metadata.bind = dataClass_active_mail.engine
class Usuario(BaseDefaults):
__tablename__ = 'd_users'
__ID__ = id
__classname__ = 'Usuario'
__dataName__ = 'datos de usuarios'
__dataType__ = 'APLICACION'
__mapper_args__ = {'extension': [defaultValueTracker(),
cacheValueTracker()]}
code = Fdb.Unicode(Adb.Length(55), Adb.Index(True), Adb.Nullable
(False))
name = Fdb.Unicode(Adb.Length(120), Adb.Nullable(False))
password = Fdb.Unicode(Adb.Length(20), Adb.Nullable(False))
email= Fdb.Unicode(Adb.Length(50))
role_id = Fdb.Unicode(Adb.Length(55), Adb.Index(True), Adb.Nullable
(False), Adb.Default(u''))
sitio_id = Fdb.Unicode(Adb.Length(55), Adb.Index(True), Adb.Nullable
(False), Adb.Default(u''))
area_id = Fdb.Unicode(Adb.Length(55), Adb.Index(True), Adb.Nullable
(False), Adb.Default(u''), Adb.ForeignKey('d_seccion.id'))
group_id = Fdb.Unicode(Adb.Length(120), Adb.Index(True),
Adb.Nullable(False), Adb.Default(u''))
Index('UsuarioUnique', Usuario.__table__.c.code,
Usuario.__table__.c._unit_code,
Usuario.__table__.c._organization_code, unique=True)
session = dySession()
q = session.query(Usuario)
q = q.options(sqlalchemy.orm.defer('name'))
print q
print q.all()
--- print result ---
SELECT d_users.code AS d_users_code, d_users.password AS
d_users_password, d_use
rs.email AS d_users_email, d_users.role_id AS d_users_role_id,
d_users.sitio_id
AS d_users_sitio_id, d_users.area_id AS d_users_area_id,
d_users.group_id AS d_u
sers_group_id, d_users.id AS d_users_id, d_users.status AS
d_users_status, d_use
rs._created_at AS d_users__created_at, d_users._updated_at AS
d_users__updated_a
t, d_users._unit_code AS d_users__unit_code,
d_users._organization_code AS d_use
rs__organization_code
FROM d_users
Traceback (most recent call last):
File start.py, line 31, in module
globalStart.defServer('activedocument')
File C:\Acappella_2Zero\libs\utils\globalStart.py, line 56, in
defServer
run = __import__(v + '.run')
File C:\Acappella_2Zero\projects\activemail\run.py, line 629, in
module
print q.all()
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\query.py, line
1193, in al
l
return list(self)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\query.py, line
1346, in in
stances
process[0](context, row, rows)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\query.py, line
1947, in ma
in
_instance(row, result)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\mapper.py, line
1612, in _
instance
identitykey = identity_key(row)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\mapper.py, line
1553, in i
dentity_key
return (identity_class, tuple(row[column] for column in pk_cols))
File C:\Acappella_2Zero\thirdparty\sqlalchemy\orm\mapper.py, line
1553, in
genexpr
return (identity_class, tuple(row[column] for column in pk_cols))
File C:\Acappella_2Zero\thirdparty\sqlalchemy\engine\base.py, line
1348, in
__getitem__
return self.__parent._get_col(self.__row, key)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\engine\base.py, line
1609, in
_get_col
type_, processor, index = self._props[key]
File C:\Acappella_2Zero\thirdparty\sqlalchemy\util.py, line 68, in
__missing
__
self[key] = val = self.creator(key)
File C:\Acappella_2Zero\thirdparty\sqlalchemy\engine\base.py, line
1507, in
fallback
raise exc.NoSuchColumnError(Could not locate column in row for
column '%s'
% (str(key)))
sqlalchemy.exc.NoSuchColumnError: Could not locate column in row for
column 'd_
users.name'
ThankĀ“s
--~--~-~--~~~---~--~~
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
sqlalchemy+unsubscr...@googlegroups.com
For more options, visit this group