我使用默认生成器创建了一些表,它们t.timestamp
的定义中都有,所以创建的模式也有 created_at 和 updated_at 字段。现在我被告知我的架构中不需要这两个字段,所以我转到原始的 create_table* 文件并从它们中取出 t.timestamp 行并运行db:migrate
andschema:load
命令但是当我转到我的 schema.rb 文件时我可以看到他们还在那里。
我在这里做错了什么吗?
我使用默认生成器创建了一些表,它们t.timestamp
的定义中都有,所以创建的模式也有 created_at 和 updated_at 字段。现在我被告知我的架构中不需要这两个字段,所以我转到原始的 create_table* 文件并从它们中取出 t.timestamp 行并运行db:migrate
andschema:load
命令但是当我转到我的 schema.rb 文件时我可以看到他们还在那里。
我在这里做错了什么吗?
跑
rails g migration remove_timestamps_from_table created_at updated_at
是table
你模特的名字。由于这遵循从 y 中删除 x 的模式,因此 rails 足够聪明,可以为您生成适当的迁移。
然后运行
rake db:migrate
更新您的开发数据库和
rake db:test:prepare
准备测试数据库,一切就绪!
在此处阅读有关迁移的更多信息。如果您仍然遇到问题,请考虑重新启动您的 rails 服务器或数据库服务器。