DataMapper: using auto_migrate! with many-to-many dependencies?
Posted
by pschuegr
on Stack Overflow
See other posts from Stack Overflow
or by pschuegr
Published on 2010-05-20T07:56:59Z
Indexed on
2010/05/20
8:00 UTC
Read the original article
Hit count: 256
Hi,
I'm trying to migrate my app from MySql to Postgresql, using Rails3-pre and the latest DataMapper.
I have several models which are related through many-to-many relationships using :through => Resource, which means that DataMapper creates a join table with foreign keys for both models. I can't auto_migrate! these changes, because I keep getting this:
ERROR: cannot drop table users because other objects depend on it
DETAIL: constraint artist_users_owner_fk on table artist_users depends on table users
constraint site_users_owner_fk on table site_users depends on table users
HINT: Use DROP ... CASCADE to drop the dependent objects too.
I have tried everything I can think of, and thought I had things working when I added :constraint => :skip to the field definition, but I keep getting that error back when I try and run auto_migrate. I thought that :skip meant that it would ignore the dependents, but maybe that only applies for deleting rows and not dropping tables?
I should mention that I can run auto_migrate after i nuke the db once, but after that, errors.
Any suggestions or advice much appreciated.
© Stack Overflow or respective owner