我有一个 Rails 应用程序,它的表关系非常糟糕,我正在尝试清理它。
目前我有一个产品和一个人,它们之间是三个不同的连接表:艺术家、作者和封面艺术家。
我正在尝试将数据从三个现有的连接表迁移到一个名为 creators 的新连接表中。新创建者加入包括一个角色列。
这是我的迁移文件,用于将数据从三个连接之一移动到新连接中。但是,当我运行它时,我没有看到新表中的任何数据。
def up
execute <<-SQL
UPDATE creators
SET product_id = products_artists.product_id,
person_id = products_artists.person_id,
role = 'artist'
FROM products_artists
SQL
end
def down
execute <<-SQL
UPDATE products_artists
SET product_id = creators.product_id,
person_id = creators.person_id
FROM creators
WHERE creators.role = 'artist'
SQL
end
任何帮助将不胜感激。