所以我创建了一个单独的迁移文件来更改数据库表中列的名称。问题是,当我尝试使用表格访问页面时,我试图更改的列名称上出现未定义的方法错误。
我的教授告诉我,我必须更改视图/控制器才能使用列但是我无法找到我必须做的事情..任何帮助/建议?
我改变列的方式是这样的:
class FixColumnName < ActiveRecord::Migration
def change
rename_column :suppliers, :sName, :"first_name"
add_column :suppliers, :"last_name"
remove_column :suppliers, :Snum
remove_column :parts, :Ptnum
end
end
答案 0 :(得分:2)
如果您已经查找了数据库列的名称,那么您还需要在应用程序代码中更改关联Model的属性名称。
也就是说,如果您之前有@supplier.sName
(或类似),那么您现在需要@supplier.first_name
(或类似的东西 - 使用新的列名称)。
答案 1 :(得分:1)
sNum不再存在。
除去
<%= @supplier.sNumb %>
你会改变
<%= @supplier.sName %>
到
<%= @supplier.first_name %>
您还需要添加
<%= @supplier.last_name %>