Отмена граблей, когда достигнут файл миграции create_view - PullRequest
0 голосов
/ 04 апреля 2019

Я пытаюсь получить некоторый код, работающий локально.Но я сталкиваюсь с проблемой, когда я запускаю:

rake db:create db:migrate db:seed --trace

Использование Postgres.

Мы включили в себя gem сцены, который создает представления базы данных с использованием create_view, но по какой-то причине, когда миграция достигаетФайл миграции, который создает представление Я получаю следующую ошибку:

steve-vmn:ss steve$ rake db:create db:migrate db:seed --trace
RAILS_GROUPS is unset; defaulting to web,worker
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Execute db:load_config
** Execute db:create
Database '22_development' already exists
Database '22_test' already exists
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config 
** Execute db:migrate
== 20170816124642 CreateStations: migrating ======================
-- create_view(:stations)
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

No such file or directory @ rb_sysopen - /Users/steve/Ss/ss/db/views/stations_v01.sql
/Users/steve/.rvm/gems/ruby-2.4.1/gems/scenic-1.5.1/lib/scenic/definition.rb:10:in `read'
/Users/steve/.rvm/gems/ruby-2.4.1/gems/scenic-1.5.1/lib/scenic/definition.rb:10:in `to_sql'

Файл Rake:

class CreateStations < ActiveRecord::Migration[5.0]
  def change
    create_view :stations
  end
end

Кажется, я не могу найти подобную ошибку в любом месте.

Ответы [ 2 ]

0 голосов
/ 05 апреля 2019

См. Документы: https://github.com/scenic-views/scenic/blob/master/README.md

Как уже упоминалось в ваших журналах ошибок, файл не существует: db / views / station_v01.sql, который появляется после запуска миграции.

  rails generate scenic:view stations
  create  db/views/stations_v01.sql
  create  db/migrate/[TIMESTAMP]_create_stations.rb

После этого

Отредактируйте файл db / views / Station_v01.sql с помощью оператора SQL, который определяет ваше представление.

0 голосов
/ 04 апреля 2019

На основании сообщения об ошибке и сценической документации необходимо определить представление SQL в db/views/stations_v01.sql. См. Следующую ссылку для примера.

https://github.com/scenic-views/scenic#great-how-do-i-create-a-view

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...