Your tables already exist in the database. However you must have
deleted your /app/databases/*.table files, so as far as web2py is
concerned it is a blank database.

To remedy the solution, add this to each of your define table statements

db.define_table('.....', fake_migrate=True)

Run your code once, this should create the needed
app/databases/*.table files, then remove th fake_migrate lines and you
should be all set.

--
Thadeus





On Sat, May 8, 2010 at 4:52 PM, Tomas Pelka <tompe...@gmail.com> wrote:
> Hi all,
> is there any advice how to migrate my web2py application. I have shared
> postgress db. When I start up new instance (simple copied) of my app, I
> always get following traceback:
>
> Traceback (most recent call last):
>   File "/home/tom/web2py/gluon/restricted.py", line 178, in restricted
>     exec ccode in environment
>   File "/home/tom/web2py/applications/init/models/db.py", line 32, in
> <module>
>     auth.define_tables()                         # creates all needed tables
>   File "/home/tom/web2py/gluon/tools.py", line 829, in define_tables
>     format='%(first_name)s %(last_name)s (%(id)s)')
>   File "/home/tom/web2py/gluon/sql.py", line 1303, in define_table
>     t._create(migrate=migrate, fake_migrate=fake_migrate)
>   File "/home/tom/web2py/gluon/sql.py", line 1724, in _create
>     self._db._execute(query)
>   File "/home/tom/web2py/gluon/sql.py", line 958, in <lambda>
>     self._execute = lambda *a, **b: self._cursor.execute(*a, **b)
> ProgrammingError: relation "auth_user" already exists
>
> Seems that web2py do not establish db connection properly. For example
> always when I want get something from bd:
>
> Traceback (most recent call last):
>   File "/home/tom/web2py/gluon/restricted.py", line 178, in restricted
>     exec ccode in environment
>   File "/home/tom/web2py/applications/NetSim/controllers/analyze.py", line
> 167, in <module>
>   File "/home/tom/web2py/gluon/globals.py", line 96, in <lambda>
>     self._caller = lambda f: f()
>   File "/home/tom/web2py/applications/NetSim/controllers/analyze.py", line
> 127, in index
>     ifaces = db().select(db.interfaces.ALL)
>   File "/home/tom/web2py/gluon/sql.py", line 1323, in __getattr__
>     return dict.__getitem__(self,key)
> KeyError: 'interfaces'
>
> But tabele "interfaces" is in bd.
>
> Thanks for comments
> Cheers Tom
>
> --
> Tomas Pelka

Reply via email to