PGError: ОШИБКА: отношение «table_name» не существует

Я пытаюсь отправить простое приложение в heroku и запустить:

heroku rake db:migrate

Но я получаю следующую ошибку:

rake aborted!
PGError: ERROR:  relation "posts" does not exist
:             SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull
              FROM pg_attribute a LEFT JOIN pg_attrdef d
                ON a.attrelid = d.adrelid AND a.attnum = d.adnum
             WHERE a.attrelid = '"posts"'::regclass
               AND a.attnum > 0 AND NOT a.attisdropped
             ORDER BY a.attnum

Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)

Моя миграция выглядит так:

class CreatePosts < ActiveRecord::Migration
  def change
    create_table :posts do |t|
      t.string :source
      t.string :tweetid
      t.string :pure
      t.string :media
      t.string :destination
      t.datetime :time
      t.timestamps
    end
  end
end

И после ссылки на другой ТАК ответ, я включил в свой Gemfile следующее:

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.1.4'
  gem 'coffee-rails', '~> 3.1.1'
  gem 'uglifier', '>= 1.0.3'
  gem 'pg'
end

Заранее благодарю за любую помощь!

--- ОБНОВЛЕНИЕ ---

Основная причина, по которой я сбит с толку, заключается в том, что все это работает локально, а не когда я запускаю миграцию на heroku.

Вот ошибка, которую я получаю сейчас:

rake aborted!
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.)

Я смотрел на этот вопрос:

Ошибка Heroku при запуске приложения rails3.1 отсутствует гем postgres

Я почти уверен, что мой файл database.yml не должен выглядят так (поскольку мне нужно запустить postgresql !!!):

# SQLite version 3.x
#   gem install sqlite3
#
#   Ensure the SQLite 3 gem is defined in your Gemfile
#   gem 'sqlite3'
development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

Приношу извинения за недоразумение. Заранее благодарим за помощь!

Также попробовал эту ссылку: Загрузка в Heroku DB rake: проблема миграции

9
задан Community 23 May 2017 в 12:17
поделиться