質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

解決済

1回答

811閲覧

postgresql でrails db:migrate できない

mymt658

総合スコア15

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2021/07/11 05:46

h2 エラー内容

rails 6.1.4
ruby 2.7.2

DBにPostgresqlを使用して、model・マイグレーションファイルを変更して
rails db:migrate しようとしたらか下記エラーが発生してしまいました。

個人的に色々しらべてみましたが、DB migrate:resetなどコマンドを入力してもエラーが出てしまいます。

イメージ説明

h2 model

ruby

1class Conference < ApplicationRecord 2 has_many :days, dependent: :destroy 3end 4

ruby

1class Day < ApplicationRecord 2 has_many :tracks, dependent: :destroy 3 belongs_to :conference 4 5 def pdate 6 (conference.start_date+seq_no).strftime("%Y年%m月%d日") 7 end 8end 9

ruby

1class Presentation < ApplicationRecord 2 belongs_to :slot 3end 4

ruby

1class Slot < ApplicationRecord 2 has_many :presentations, dependent: :destroy 3 belongs_to :track 4 5 def pdatetime 6 start_time.strftime("%Y年%m月%d日") + " " + ptime 7 end 8 9 def ptime 10 start_time.strftime("%H:%M") + " - " + end_time.strftime("%H:%M") 11 end 12end 13

ruby

1class Track < ApplicationRecord 2 has_many :slots, dependent: :destroy 3 belongs_to :day 4end 5

h2 マイグレーションファイル

ruby

1class CreateConferences < ActiveRecord::Migration[6.1] 2 def change 3 create_table :conferences do |t| 4 t.string :name 5 t.text :description 6 t.date :start_date 7 t.integer :duration 8 9 t.timestamps 10 end 11 end 12end 13

ruby

1class CreateDays < ActiveRecord::Migration[6.1] 2 def change 3 create_table :days do |t| 4 t.references :conference, null: false, foreign_key: true 5 t.string :title 6 t.text :description 7 t.string :seq_no/integer 8 9 t.timestamps 10 end 11 end 12end 13

ruby

1class CreateTracks < ActiveRecord::Migration[6.1] 2 def change 3 create_table :tracks do |t| 4 t.references :day, null: false, foreign_key: true 5 t.string :title 6 t.text :description 7 t.integer :seq_no 8 9 t.timestamps 10 end 11 end 12end 13

ruby

1class CreateSlots < ActiveRecord::Migration[6.1] 2 def change 3 create_table :slots do |t| 4 t.references :track, null: false, foreign_key: true 5 t.string :title 6 t.string :organizer 7 t.string :chair 8 t.string :lecturer 9 t.string :room 10 t.text :description 11 t.string :url 12 t.string :audience 13 t.string :level 14 t.string :background 15 t.string :category 16 t.string :material 17 t.string :mlinkurl 18 t.datetime :start_time 19 t.datetime :end_time 20 21 t.timestamps 22 end 23 end 24end 25

ruby

1class CreatePresentations < ActiveRecord::Migration[6.1] 2 def change 3 create_table :presentations do |t| 4 t.referenses :slot 5 t.string :title 6 t.string :presenter 7 t.string :authors 8 t.text :description 9 t.string :url 10 11 t.timestamps 12 end 13 end 14end 15

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

winterboum

2021/07/11 07:17

rails db:migrate:status の結果を載せてください。
guest

回答1

0

自己解決

いくつかのテーブルにリレーションを持たせようとしていましたが、マイグレーションファイルを作成した順番によってエラーが発生していたみたいです。

投稿2021/07/11 07:39

mymt658

総合スコア15

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問