Ruby 如何删除活动记录中的表列
我想使用活动记录从表中删除列。请查找下面的代码片段Ruby 如何删除活动记录中的表列,ruby,activerecord,orm,Ruby,Activerecord,Orm,我想使用活动记录从表中删除列。请查找下面的代码片段 require "active_record" require 'sqlite3' ActiveRecord::Base.establish_connection(:adapter => 'sqlite3', :database => 'test_one') class Account < ActiveRecord::Base table_name = "AccountBean" primary_key = "proce
require "active_record"
require 'sqlite3'
ActiveRecord::Base.establish_connection(:adapter => 'sqlite3', :database => 'test_one')
class Account < ActiveRecord::Base
table_name = "AccountBean"
primary_key = "process_id"
remove_column "xxx" // I need this type of method to remove column "xxx" from accounts table
end
需要“活动记录”
需要'sqlite3'
ActiveRecord::Base.building_连接(:adapter=>'sqlite3',:database=>'test_one')
类帐户
ActiveRecord中是否有满足此要求的类方法 我猜ActiveRecord假定对结构的更改应该使用迁移来完成 如果确实需要,您可以使用rails在迁移中使用的相同方法,例如删除列- 我不建议这样:)
ActiveRecord::Base.connection.删除列(“人员”、“名字”)
在一个类中,看起来像:
class Account < ActiveRecord::Base
table_name = "AccountBean"
primary_key = "process_id"
connection.remove_column(table_name, "xxx")
end
类帐户
是的,但是使用连接方法,即使我们知道我们是在表中表示的类(Account),也有点麻烦odd@pramod-方法remove\u column
仅用于迁移,因此您不能期望有一个简单的API来更改ActiveRecord
models:)中的表结构