Well, it was sqlite! Currently moving to postgresql principally for other reasons. Thanks anyway for your response!
On Monday, 1 June 2015 05:33:23 UTC+2, Michael Bayer wrote: > > > > On 5/31/15 7:00 PM, Wavemaker wrote: > > Well, upon digging further myself, I noticed that was an old foreign key > in my Pictures table referring to the non-existant auth_user table: > sql: "last_changed_user_id" integer NOT NULL REFERENCES "auth_user" > ("id") > This was not referenced anymore in the model. So, I guess that in order to > use alembic properly I should not have manually deleted that table (in fact > I did that before starting to use alembic), but to remove both the table > and the foreign key in the model and then let alembic apply both changes to > the database in one go. Correct? > > > that doesn't make too much sense because a relational database can't have > a FOREIGN KEY to a table that doesn't exist. *unless* this is SQLite, > which is just an odd case. feel free to manually delete whatever tables > you want, you just need to make sure you keep track of what's going on when > you point a schema reflection tool at that database at some later point. > > > For reference purposes still find here the complete stack trace without > having the solution applied yet. Note again that I inserted some debug > statements here and there in the sqlalchemy/alembic code, so line numbers > may deviate. > > Traceback (most recent call last): > File "virtualenv\Scripts\alembic-script.py", line 11, in <module> > load_entry_point('alembic==0.7.6', 'console_scripts', 'alembic')() > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\config.py", line 439, in main > CommandLine(prog=prog).main(argv=argv) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\config.py", line 433, in main > self.run_cmd(cfg, options) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\config.py", line 416, in run_cmd > **dict((k, getattr(options, k)) for k in kwarg) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\command.py", line 113, in revision > script.run_env() > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\script.py", line 390, in run_env > util.load_python_file(self.dir, 'env.py') > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\util.py", line 243, in load_python_file > module = load_module_py(module_id, path) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\compat.py", line 79, in load_module_py > mod = imp.load_source(module_id, path, fp) > File "alembic\env.py", line 99, in <module> > run_migrations_online() > File "alembic\env.py", line 92, in run_migrations_online > context.run_migrations() > File "<string>", line 7, in run_migrations > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\environment.py", line 738, in run_migrations > self.get_context().run_migrations(**kw) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\migration.py", line 300, in run_migrations > for step in self._migrations_fn(heads, self): > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\command.py", line 95, in retrieve_migrations > autogen._produce_migration_diffs(context, template_args, imports) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\autogenerate\api.py", line 154, in _produce_migration_diffs > autogen_context, object_filters, include_schemas) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\autogenerate\api.py", line 256, in _produce_net_changes > inspector, metadata, diffs, autogen_context) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\alembi > c\autogenerate\compare.py", line 84, in _compare_tables > inspector.reflecttable(t, None) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\engine\reflection.py", line 590, in reflecttable > exclude_columns, reflection_options) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\engine\reflection.py", line 720, in _reflect_fk > **reflection_options > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\sql\schema.py", line 441, in __new__ > metadata._remove_table(name, schema) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\util\langhelpers.py", line 60, in __exit__ > compat.reraise(exc_type, exc_value, exc_tb) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\sql\schema.py", line 432, in __new__ > table._init(name, metadata, *args, **kw) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\sql\schema.py", line 513, in _init > self._autoload(metadata, autoload_with, include_columns) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\sql\schema.py", line 528, in _autoload > self, include_columns, exclude_columns > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\engine\base.py", line 1481, in run_callable > return callable_(self, *args, **kwargs) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\engine\default.py", line 364, in reflecttable > return insp.reflecttable(table, include_columns, exclude_columns) > File "F:\Workspace\MyProject\src\virtualenv\Lib\site-packages\sqlalc > hemy\engine\reflection.py", line 578, in reflecttable > raise exc.NoSuchTableError(table.name) > sqlalchemy.exc.NoSuchTableError: auth_user > -- > You received this message because you are subscribed to the Google Groups > "sqlalchemy-alembic" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sqlalchemy-alembic+unsubscr...@googlegroups.com <javascript:>. > For more options, visit https://groups.google.com/d/optout. > > > -- You received this message because you are subscribed to the Google Groups "sqlalchemy-alembic" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy-alembic+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.