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

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

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

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

Q&A

解決済

1回答

2564閲覧

solidusをインストール直後からrailsコマンドが使えなくなる件について

dialbird

総合スコア379

Ruby on Rails

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

0グッド

0クリップ

投稿2017/04/30 08:55

ECサイトテンプレートのSolidusを使ってみようと、以下のようなGemfilebundleしたら、エラーになりました。

source 'https://rubygems.org' git_source(:github) do |repo_name| repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") "https://github.com/#{repo_name}.git" end gem 'rails', '~> 5.1.0' gem 'pg', '~> 0.18' gem 'puma', '~> 3.7' gem 'sass-rails', '~> 5.0' gem 'uglifier', '>= 1.3.0' gem 'therubyracer', platforms: :ruby gem 'coffee-rails', '~> 4.2' gem 'jbuilder', '~> 2.5' gem 'solidus' gem 'solidus_auth_devise' # 以下略

エラー文

Bundler could not find compatible versions for gem "rails": In snapshot (Gemfile.lock): rails (= 5.1.0) In Gemfile: rails solidus was resolved to 1.0.0, which depends on solidus_frontend (= 1.0.0) was resolved to 1.0.0, which depends on canonical-rails (~> 0.0.4) was resolved to 0.0.11, which depends on rails (< 5.0, >= 3.1) solidus was resolved to 1.0.0, which depends on solidus_core (= 1.0.0) was resolved to 1.0.0, which depends on deface (~> 1.0.0) was resolved to 1.0.2, which depends on rails (>= 3.1) solidus was resolved to 1.0.0, which depends on solidus_core (= 1.0.0) was resolved to 1.0.0, which depends on rails (~> 4.2.0) Running `bundle update` will rebuild your snapshot from scratch, using only the gems in your Gemfile, which may resolve the conflict.

どうやらrailsのバージョンと噛み合わないようなので、以下のようにrailsのバージョンを指定しないようにしてから、bundle updateしたところ、とりあえずbundleは通りました。

# ここを gem 'rails', '~> 5.1.0' # こうしただけ gem 'rails'

しかし、今度はSolidusをインストールするためのコマンド
bundle exec rails g spree:install
を実行するとエラーが出るようになってしまいました。(プロジェクト名はShopShop)

/home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/railtie/configuration.rb:95:in `method_missing': undefined method `load_defaults' for #<Rails::Application::Configuration:0x007f9f135c9388> (NoMethodError) from /home/vagrant/shopshop/config/application.rb:12:in `<class:Application>' from /home/vagrant/shopshop/config/application.rb:10:in `<module:Shopshop>' from /home/vagrant/shopshop/config/application.rb:9:in `<top (required)>' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:156:in `require' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:156:in `require_application_and_environment!' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:143:in `generate_or_destroy' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:60:in `generate' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands/commands_tasks.rb:49:in `run_command!' from /home/vagrant/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.2/lib/rails/commands.rb:18:in `<top (required)>' from bin/rails:4:in `require' from bin/rails:4:in `<main>'

ちなみにこのエラーはこのコマンドに限らず、railsコマンド全般で出ます。

どなたかわかる方、何が問題かのご指摘をお願いいたします。
rails -vでは5.0.2と出ました)

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

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

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

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

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

guest

回答1

0

ベストアンサー

僕も同じところで躓きました。
まだ完壁に解決できたわけじゃないけれど、そこから進展があったので回答します。

gem install rails --version="3.2.17" #指定バージョンをインストール
これで、bundleに設定したバージョンのrailsをインストールします。
bundle install でrails (~> 4.2.0)というエラー文が出てるので、railsは4.2.0以下じゃないとだめですよってことなのだと思います。
なのでgemfileのrailsを4.2.0にして、gem install rails --version="4.2.0"にすればよいと思いますよ。

追記: rails 4.2.0をinstallしてみましたがrailsコマンドが使えませんでした。また進展がありましたら、ご報告します。

投稿2017/05/16 11:20

編集2017/05/16 11:33
AkiPoN1

総合スコア15

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

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

dialbird

2017/05/16 12:09

AkiPonN1さん ご返答ありがとうございます ちょうど先ほど解決いたしました! まさにおっしゃる通りバージョンの問題で、Gemfileで4.2系のRailsをインストールした後、そのディレクトリでbundle exec rails newしてあげたところ、Rails4.2系統のappができて、そこから先は思った通りの挙動となりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問