Rails 3.2.6 и создание представлений базы данных через миграции
Я использую rails 3.2.6, и мне нужно создать базу данных VIEW. Как обычно, я создал миграцию, и я попытался достичь цели с помощью метода execute.
К сожалению, миграция создает таблицу, а не представление. Почему?
Большое спасибо заранее,
Mauro
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
К сожалению, эта миграция создает таблицу...
UPDATE:
предыдущий код работает! Я выполнял rake db: reset вместо rake db: migrate: reset (моя ошибка)
Ответы
Ответ 1
Похоже, вы ответили на свой вопрос, но я сделаю соответствующее предложение. Попробуйте rails_sql_views gem. Эта ссылка относится к исходному репо на GitHub. Похоже, что его больше не поддерживают. Стоит рассмотреть график сети и попробовать одну из вилок. Я не уверен, что любая из вилок поддерживает Rails 3.2.6, но я бы предложил просмотреть их. Christian Eichhorn добавила поддержку адаптера mysql2 около трех лет назад.
Ответ 2
Я создал драгоценный камень под названием rails_db_views, который совместим с Rails 4 и все еще поддерживается.
Привет,
Ясин.