Rails - 更新模型数据成员

时间:2012-12-15 13:11:24

标签: ruby-on-rails ruby crud

我想知道更新模型的正确方法是什么 例如,假设我想将数据成员的名称从likes更改为numOfLikes

此变量出现在模型本身中,但也出现在schema.rbdb\migrate\XXX.rb

我手动更改了这些文件并收到了此错误:

  

#Topic:0x3442d88

的未定义方法`numOfLikes'

那么,正确的做法是什么? (我也要求删除数据成员或添加数据成员)

1 个答案:

答案 0 :(得分:2)

最好的方法是运行迁移来重命名列,这将更新schema.rb文件。

您不应该直接编辑schema.rb,并且迁移文件只在数据库上运行命令,如果在运行后更改则不会影响模型。

Schema.rb表示数据库模式的状态,它不通过单独更改文件的内容来控制或更改它。

包含以下内容的新迁移:

rename_column :table_name, :likes, :numOfLikes

这将重命名数据库中的列,并将数据库模式转储到schema.rb中,并使用新的属性名称。