我曾使用默认生成器来创建一些表,并且它们在定义中都有t.timestamp
,因此创建的模式也有created_at和updated_at字段。
现在我被告知我的模式中不需要这两个字段,所以我转到原始的create_table *文件并从中取出t.timestamp行并运行db:migrate
和schema:load
命令
但是当我转到schema.rb文件时,我仍然可以看到它们仍在那里。
我在这里做错了吗?
答案 0 :(得分:13)
运行
rails g migration remove_timestamps_from_table created_at updated_at
table
是您模特的名字。由于这是遵循从y中删除x的模式,因此rails足够智能,可以为您生成适当的迁移。
然后运行
rake db:migrate
更新您的开发数据库和
rake db:test:prepare
准备测试数据库,你们都已经完成了设置!
详细了解迁移here。如果仍有问题,请考虑重新启动rails服务器或数据库服务器。