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

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

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

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

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

Ruby on Rails

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

Q&A

解決済

3回答

1219閲覧

ActiveRecord::ConnectionNotEstablished No connection pool with 'primary' found.

shodai

総合スコア16

Ruby

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

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

Ruby on Rails

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

0グッド

1クリップ

投稿2019/02/13 23:05

編集2019/02/14 06:02

railsの環境構築をするため、
ドットインストール
(https://dotinstall.com/lessons/basic_rails_v3/41802)、
にある通り進め、 Rails server を実行し、localhost:3000にアクセスしたところ、下記のエラーが発生しました。

ActiveRecord::ConnectionNotEstablished
No connection pool with 'primary' found.

def retrieve_connection(spec_name) #:nodoc: pool = retrieve_connection_pool(spec_name) raise ConnectionNotEstablished, "No connection pool with '#{spec_name}' found." unless pool pool.connection end

エラーについて自分なりに検索し、(https://qiita.com/masayuki14/items/27ca4764d0bcae4affea)のページを参考にし、解決を試みましたが、今度は
NameError: uninitialized constant ActiveRecord
というエラーがでてしまいました。
uninitialized constant が起きるということは、「定義したクラスが読み込まれていない」ということということまでは、理解できたのですがここからどうすればよいのか見当もつきません。

初心者のため、アバウトな質問になっているかもしれませんが、どなたかご教授いただけないでしょうか。

追記
補足情報にあるように、
gem 'sqlite3'
の行を、
gem 'sqlite3', '~> 1.3.6' に変更し、
bundle installを試してもこの状態のままです。

widows10/Ruby on Rails 5.1.3 / Ruby 2.4.0 / SQLite 3.6.20
を使用しています。

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

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

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

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

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

Kta-M

2019/02/14 05:22

https://dotinstall.com/lessons/basic_rails_v3/41802 の補足情報に書いてあるように、sqlite3のgemのバージョンを指定してやれば解決するのではないかと思うのですが、いかがでしょうか? ただ、手元でも少し試してみたのですが、このエラーが起こせません。参考までに環境の情報を教えていただけませんか? - OS, OSのバージョン - rubyのバージョン - railsのバージョン - sqlite3のバージョン
Kta-M

2019/02/14 05:52

あ、分かったかもしれません。回答に書きます。
guest

回答3

2

ベストアンサー

もしかすると、Gemfileでsqlite3のバージョン指定をしてbundle installしたあと、rails serverの再起動をしていない状態でしょうか?
rails serverは、大抵のrubyのコードの変更は何もしなくても反映してくれますが、gemの更新の反映はさすがにしてくれません。再起動してみてください。

投稿2019/02/14 05:54

Kta-M

総合スコア456

shodai, FKM👍を押しています

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

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

shodai

2019/02/18 04:26

無事、サーバーを起動できました!丁寧にご回答いただきありがとうございました。
guest

1

最初からやり直したところ無事、「Yay! You’re on Rails!」を表示させることができました!
ご指摘いただいた通り、bundle installができていなかったのが原因のようでした。
自分ではbundle install していたつもりでしたが、実行していたディレクトリの場所が間違っており、could no locate gem file のエラーがでたままにしていたのかなと思います。

投稿2019/02/18 04:25

shodai

総合スコア16

退会済みユーザー👍を押しています

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

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

0

最初からやり直したところ無事、「Yay! You’re on Rails!」を表示させることができました!
ご指摘いただいた通り、bundle installができていなかったのが原因のようでした。
自分ではbundle install していたつもりでしたが、実行していたディレクトリの場所が間違っており、could no locate gem file のエラーがでたままにしていたのかなと思います。

投稿2019/02/18 04:26

shodai

総合スコア16

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.53%

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

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

質問する

同じタグがついた質問を見る

Ruby

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

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

Ruby on Rails

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