我有一个rails项目,它使用旧版本的FlexImage插件来处理图像。
在旧版本中,图像数据存储在名为“data”的列中,在新版本中该列必须命名为“image_file_data”。
我编写了一个迁移来重命名列,但是当我尝试运行迁移时,我的猜测是rails试图加载模型,然后自动检查是否存在有效列(它不是)并抛出一个停止迁移的错误。
我猜想如果我从未加载有问题的模型类并且只是编写了一些sql来重命名列,我的问题就会得到解决。但是以下行不起作用,因为rails仍尝试加载模型。
Apartment.connection.execute“ALTER TABLE logos CHANGE DATA image_file_data MEDIUMBLOB;”
答案 0 :(得分:0)
model =(table_name.to_s).classify.constantize
之前,这导致模型加载