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

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

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

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

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

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

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

810閲覧

フォロー機能を導入しようと思ったら、rake db:migrateで引っかかって抜け出せない状態にあります。

avicii

総合スコア49

Ruby

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

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

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

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/07/20 04:52

編集2020/07/21 09:10

今、現在フォロワー機能を導入しようと考えているのですが、rake db:migrateをterminalで実行時にエラーにあってしまい、抜け出すことができない状態にあります。

参考サイト
・フォロワー機能(このサイト通りにやったのですが、最初の段階でエラーになってしまいました.)⤵️
: https://qiita.com/mitsumitsu1128/items/e41e2ff37f143db81897
・already exitst解決方法: https://bokunonikki.net/post/2018/0214_rails_mysql_error/
https://qiita.com/okamoto_ryo/items/8aceacdd81d079e8a120

1回目にrake db:migrateをした時のエラー

terminal

1$ rake db:migrate 2== 20200721090023 CreateRelationships: migrating ============================== 3-- create_table(:relationships) 4rake aborted! 5StandardError: An error has occurred, all later migrations canceled: 6 7Mysql2::Error: Cannot add foreign key constraint: ALTER TABLE `relationships` ADD CONSTRAINT `fk_rails_be1f05b3d7` 8FOREIGN KEY (`follow_id`) 9 REFERENCES `follows` (`id`) 10/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 11 12Caused by: 13ActiveRecord::StatementInvalid: Mysql2::Error: Cannot add foreign key constraint: ALTER TABLE `relationships` ADD CONSTRAINT `fk_rails_be1f05b3d7` 14FOREIGN KEY (`follow_id`) 15 REFERENCES `follows` (`id`) 16/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 17 18Caused by: 19Mysql2::Error: Cannot add foreign key constraint 20/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 21Tasks: TOP => db:migrate 22(See full trace by running task with --trace) 23

terminalでrails sをした時に、'bin/rake db:migrate RAILS_ENV=development'が表示され、打ち込むとこのエラーが表示されました。

terminal

1$ bin/rake db:migrate RAILS_ENV=development 2Running via Spring preloader in process 61687 3== 20200721090023 CreateRelationships: migrating ============================== 4-- create_table(:relationships) 5rake aborted! 6StandardError: An error has occurred, all later migrations canceled: 7 8Mysql2::Error: Table 'relationships' already exists: CREATE TABLE `relationships` (`id` int(11) auto_increment PRIMARY KEY, `user_id` int(11), `follow_id` int(11), `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL) ENGINE=InnoDB 9/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 10-e:1:in `<main>' 11 12Caused by: 13ActiveRecord::StatementInvalid: Mysql2::Error: Table 'relationships' already exists: CREATE TABLE `relationships` (`id` int(11) auto_increment PRIMARY KEY, `user_id` int(11), `follow_id` int(11), `created_at` datetime NOT NULL, `updated_at` datetime NOT NULL) ENGINE=InnoDB 14/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 15-e:1:in `<main>' 16 17Caused by: 18Mysql2::Error: Table 'relationships' already exists 19/Users/hiroshi/wa/db/migrate/20200721090023_create_relationships.rb:3:in `change' 20-e:1:in `<main>' 21Tasks: TOP => db:migrate 22(See full trace by running task with --trace) 23

db

1class CreateRelationships < ActiveRecord::Migration 2 def change 3 create_table :relationships do |t| 4 t.references :user, foreign_key: true 5 t.references :follow, foreign_key: { to_table: :users } 6 7 t.timestamps 8 end 9 add_index :relationships, [:user_id, :follow_id], :unique => true 10 11 end 12end

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

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

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

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

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

guest

回答2

0

自己解決

こちらのページを参考にさせて頂いたら、フォロー機能を行うことができるようになりました。
https://qiita.com/kitaokeita/items/59b625e0c43a62f5fe6a

投稿2020/08/03 06:55

avicii

総合スコア49

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

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

0

エラーを画像でなくtextで貼っていただければコピペできるので回答作成がらくになります。
のっけに allready exsixtがあります。既に出来ているtableをまたcreateしようとしています。
そのmigrationは必要ですか? createではなく add_columnではだめ?

投稿2020/07/21 01:50

winterboum

総合スコア23284

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問