ActiveRecord::PendingMigrationError

実現したいこと

railsにて投稿にタグを設定できる機能の実装に取り組んでいます。
タグを保存するタグテーブルを作成するためにdb/migrate/20230713005537_create_tags.rbを作成しましたが,PG::DuplicateTable: ERROR: relation "tags" already existsが出てきてしまいうまくマイグレーションできません。対処法を教えていただけると幸いです。

発生している問題・分からないこと

投稿にタグを設定できる機能を実装中,タグを保存するためtagsテーブル作成しましたが,すでに存在していると出てきてしまいマイグレーションができない。

エラーメッセージ

error

12ActiveRecord::PendingMigrationError 3Migrations are pending. To resolve this issue, run: 4bin/rails db:migrate RAILS_ENV=development 5You have 1 pending migration: 620240130024556_create_tags.rb 7Extracted source (around line #625): 8623 9624 10625 11626 12627 13628 14 15 # Raises <tt>ActiveRecord::PendingMigrationError</tt> error if any migrations are pending. 16 def check_pending!(connection = Base.connection) 17 raise ActiveRecord::PendingMigrationError if connection.migration_context.needs_migration? 18 end 19 20 def load_schema_if_pending!

この後,Run pending migration を押すと以下のエラーが発生

StandardError An error has occurred, this and all later migrations canceled: PG::DuplicateTable: ERROR: relation "tags" already exists Extracted source (around line #113): 111 112 113 114 115 116 start = Process.clock_gettime(Process::CLOCK_MONOTONIC) result = exec_without_profiling(*args, &blk) elapsed_time = SqlPatches.elapsed_time(start) record = ::Rack::MiniProfiler.record_sql(args[0], elapsed_time) result.instance_variable_set("@miniprofiler_sql_id", record) if result Rails.root: /app
### 該当のソースコード ```db/migrate/20240130024556_create_tags.rb class CreateTags < ActiveRecord::Migration[6.1] def change create_table :tags do |t| t.string :name t.timestamps end end end

app/models/tag.rb

12class Tag < ApplicationRecord 3end 4

現在存在しているマイグレーションファイル Status Migration ID Migration Name -------------------------------------------------- up 20210707021252 Create users up 20210707021454 Create profiles up 20210707041601 Create posts up 20210709035845 Create comments down 20240130024556 Create tags

試したこと・調べたこと

上記の詳細・結果

create_table :tags, if_not_exists: trueにて実行しようとおもったのですが,テーブルの構造に変更があった場合にそれを反映させることができなくなる恐れを考慮し実行できずにいます。

補足

特になし

コメントを投稿

0 コメント