if u make it the same way as the other ticket_status... key, would it 
work?

On Thursday 19 February 2009 13:57:07 Alessandro Dentella wrote:
> Hi,
>
>   in a working setup I added a ForeignKey to table
> 'cliente_cliente' as follows (client_id):
>
> class Project(Base):
>      __tablename__ = "ticket_project"
>      __table_args__  = {'useexisting' : True}
>      id = Column(Integer, primary_key=True)
>      date_create         = Column(Date(),
> server_default=text("CURRENT_TIMESTAMP"), nullable=False)
> date_last_modify   = Column(Date(), onupdate=func.now(),
> default=func.now()) status             =
> Column(ForeignKey('ticket_status.id'), nullable=False) name        
>       = Column(String(30), nullable=False) description        =
> Column(Text, nullable=False)
>      date_start         = Column(Date, default=func.now())
>      date_end           = Column(Date)
>      client_id          = Column(ForeignKey(Cliente.id),
> nullable=True)
>
>
>   this brakes session.query(Project).... with the message I report
> below.
>
>   Of course I *did* create new field on table in the Postgres
> database. Note that if I use autoload on all Tables everything
> works correctly, so I tend to think I made a mistake in the
> definition, but I already spent some hours w/o any better
> understanding.
>
>   I'll try to reproduce the error on a simpler situation but is not
> that easy and I'd like to understand if the error message tells
> something that could address me to the solution
>
>   thanks in advance
>   sandro
>   *:-)
>
> Traceback (most recent call last):
>   File "/home/misc/src/hg/py/fossati/fossati/job.py", line 86, in
> jobs_mask m.reload()
>   File "../../sqlkit/widgets/mask/mask.py", line 67, in reload
>   File "/misc/src/hg/py/sqlkit/sqlkit/widgets/common/sqlwidget.py",
> line 703, in reload self.records = query.all()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/orm/query.
>py", line 1007, in all return list(self)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/orm/query.
>py", line 1097, in __iter__ context = self._compile_context()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/orm/query.
>py", line 1569, in _compile_context from_clause =
> sql_util.splice_joins(from_clause, eager_join, eager_join.stop_on)
> File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/util.p
>y", line 252, in splice_joins right.onclause =
> adapter.traverse(right.onclause)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/visito
>rs.py", line 158, in traverse return replacement_traverse(obj,
> self.__traverse_options__, replace) File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/visito
>rs.py", line 250, in replacement_traverse obj = clone(obj)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/visito
>rs.py", line 241, in clone newelem = replace(element)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/visito
>rs.py", line 155, in replace e = v.replace(elem)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/util.p
>y", line 473, in replace return self._corresponding_column(col,
> True)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/util.p
>y", line 451, in _corresponding_column newcol =
> self.selectable.corresponding_column(col,
> require_embedded=require_embedded) File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 1834, in corresponding_column if
> self.c.contains_column(column):
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/util.py",
> line 1358, in __get__ obj.__dict__[self.__name__] = result =
> self.fget(obj)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 1867, in _columns self._export_columns()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 1897, in _export_columns
> self._populate_column_collection()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 2594, in _populate_column_collection for col in
> self.element.columns:
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/util.py",
> line 1358, in __get__ obj.__dict__[self.__name__] = result =
> self.fget(obj)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 1867, in _columns self._export_columns()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 1897, in _export_columns
> self._populate_column_collection()
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/sql/expres
>sion.py", line 3428, in _populate_column_collection
> c._make_proxy(self, name=self.use_labels and c._label or None) File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/schema.py"
>, line 743, in _make_proxy [c._init_items(f) for f in fk]
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/schema.py"
>, line 54, in _init_items item._set_parent(self)
>   File
> "/home/misc/src/sqlalchemy/sqlalchemy-svn/lib/sqlalchemy/schema.py"
>, line 929, in _set_parent self.parent.table.foreign_keys.remove(fk)
> KeyError: ForeignKey(u'cliente_cliente.id')



--~--~---------~--~----~------------~-------~--~----~
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 at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to