Hi,
First of all sorry post new email in the list but I have some errors in
the other one. (
http://sourceforge.net/mailarchive/forum.php?thread_id=3D9136487&forum_id=
=3D30269
)
The example that Rick Flosi gives me was correct and all works ^_^. Thank=
s
Rick :-)
Have one more question :P Is there a way to raise something like
"Duplicate Key"? It gives me an exception to big :P
"""pysqlite2.dbapi2.OperationalError: columns grupo_id, utilizador_id are
not unique"""
Many thanks for all,
Helio Pereira
<------------------------ Code ----------------------------------->
from sqlobject import *
import sys, os
conn_str=3D"sqlite:/:memory:?debug=3Dt"
#conn_str=3D"sqlite:/:memory:"
sqlhub.processConnection =3D connectionForURI(conn_str)
class GrupoUtilizador(SQLObject):
class sqlmeta:
table =3D 'grupo_utilizador'
grupo =3D ForeignKey('Grupo', notNull=3DTrue)
utilizador =3D ForeignKey('Utilizador', notNull=3DTrue)
unique =3D index.DatabaseIndex(grupo, utilizador, unique=3DTrue)
class Utilizador(SQLObject):
nome =3D StringCol(alternateID=3DTrue, unique=3DTrue, length=3D100)
grupos =3D RelatedJoin('Grupo', createRelatedTable=3DFalse)
class Grupo(SQLObject):
nome =3D StringCol(alternateID=3DTrue, length=3D15)
descr =3D StringCol(length=3D100)
utilizadores =3D RelatedJoin('Utilizador', createRelatedTable=3DFalse)
GrupoUtilizador.createTable()
Utilizador.createTable()
Grupo.createTable()
g1 =3D Grupo(nome=3D"grupo1", descr=3D"Grupo 1")
g2 =3D Grupo(nome=3D"grupo2", descr=3D"Grupo 2")
u1 =3D Utilizador(nome=3D"Helio")
u2 =3D Utilizador(nome=3D"Pereira")
u1.addGrupo(g1)
u1.addGrupo(g2)
# Here is a duplicate group in the user
u2.addGrupo(g1)
u2.addGrupo(g1)
print "-"*80
print u2, u2.grupos
print "-"*80
|