Ruby on rails 删除了一列,Rails仍希望在其上写入

Ruby on rails 删除了一列,Rails仍希望在其上写入,ruby-on-rails,Ruby On Rails,最近,我使用rake db:migrate,remove\u column上的self.up从我的一个表中删除了一列abc。已成功删除该列 尝试向表中添加条目时,出现以下错误: ActiveRecord::StatementInvalid (Mysql::Error: Unknown column 'abc' in 'field list': INSERT INTO... 它试图写在那个专栏上,尽管它已经不存在了。我已经检查了我所有的模型并确认abc不再存在。还选中了schema.rb和ab

最近,我使用
rake db:migrate
remove\u column
上的
self.up
从我的一个表中删除了一列
abc
。已成功删除该列

尝试向表中添加条目时,出现以下错误:

ActiveRecord::StatementInvalid (Mysql::Error: Unknown column 'abc' in 'field list': 
INSERT INTO...

它试图写在那个专栏上,尽管它已经不存在了。我已经检查了我所有的模型并确认
abc
不再存在。还选中了
schema.rb
abc
已被删除。

您的代码必须引用“abc”列,在该列中,您试图向表中添加条目。您需要删除引用,因为列已被删除


谢谢

在重新加载Apache后,它开始工作。这实际上是正确的方法吗?

当您在生产环境中更改类似的内容时,必须重新加载应用程序。。。如果您使用的是Phusion Passenger,您可以通过运行以下命令来完成:

touch tmp/restart.txt

我已经检查了我的代码,正在进行应用程序范围的搜索。没有关联。但它在Apache重新加载后工作。奇怪的是,如果您没有处于开发模式,那么对于这样的更改(任何与此相关的更改),您都需要重新启动Apache/Nginx。感谢您的澄清。