我正在使用rails 3.2.6,我需要创建一个数据库VIEW。像往常一样,我创建了一个迁移,我尝试使用execute方法实现目标。通过迁移创建Rails 3.2.6&数据库视图
不幸的是,迁移会生成一个表格,而不是视图。为什么?
提前许多感谢, 莫罗
UPDATE:
我想有一些如下:
class CreateMyView < ActiveRecord::Migration
def self.up
execute <<-SQL
CREATE VIEW my_view AS SELECT ...
SQL
end
def self.down
execute <<-SQL
DROP VIEW my_view
SQL
end
end
不幸的是这种迁移创建一个表...
更新: 以前的代码工程!我正在执行rake db:reset而不是rake db:migrate:reset(我的错误)
我不确定是否有可能生成此类迁移。使用原始SQL创建视图。 – 2012-07-26 09:57:39
我正在做同样的事情(除了我正在使用def def和def down,而不是def self.up和def self.down - 是否有区别?),并且我得到相同的行为:它创建一个视图,当我运行迁移,但将create_table命令添加到schema.rb文件。 – Ladlestein 2013-01-18 19:33:20