使用rails迁移很容易删除列.

class SomeClass < ActiveRecord::Migration
  def self.up
    remove_column :table_name, :column_name
  end
end

我想知道是否有任何方法可以使用console从表中删除列.

推荐答案

您可以直接在rails console中运行up方法中的代码:

>> ActiveRecord::Migration.remove_column :table_name, :column_name

如果您已经有一个迁移文件,如"db/migrate/20130418125100_remove_foo.rb",则可以执行以下操作:

>> require "db/migrate/20130418125100_remove_foo.rb"
>> RemoveFoo.up

如果你只想做rake db:migrate,试试这个:

>> ActiveRecord::Migrator.migrate "db/migrate"

Ruby-on-rails相关问答推荐

本地主机的上衣配置

Rails:has_many 通过不返回结果

Rails 模型 - 以 ID 作为自定义列的自定义主键

Rails 连接并包含连接表中的列

attr_accessible(*attributes) 和 attr_protected(*attributes) 有什么区别?

Rails 模型.有效吗?刷新自定义错误并错误地返回 true

Factory Girl + Mongoid 在fixture 中嵌入文档

理解 Gemfile.lock:删除 Gemfile.lock 然后再次运行 bundle install 可以吗?

Rails 4,使用 ActiveRecord 的原始查询

如何在我的 Gemfile 中找到未使用的Ruby

Rails Activeadmin - 自定义关联 Select 框

Rails 5:重命名表迁移

如何测试自定义验证器?

在范围内传递参数

Rails 4模块的未初始化常量

:javascript haml 标签中的内联Ruby ?

Sidekiq 在 docker-compose 上的 127.0.0.1:6379 (Errno::ECONNREFUSED) 上连接到 Redis 时出错

rails 获取应用程序根/基本 url

Ruby on Rails:如何在 select_tag 中使用默认占位符?

如何拆分长行的 Ruby