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

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

新規登録して質問してみよう
ただいま回答率
87.20%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby on Rails 5

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

解決済

ActionController::RoutingError (uninitialized constant Places Did you mean? Place):

ryota5656
ryota5656

総合スコア8

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby on Rails 5

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

1回答

0評価

0クリップ

93閲覧

投稿2022/05/24 13:56

google API等を使用し、場所を登録するアプリを作成しています。
docker上では問題なく登録できましたが、heroku上で以下のエラーが発生し困っています。

herokuログ

2022-05-23T08:54:17.862694+00:00 app[web.1]: I, [2022-05-23T08:54:17.862622 #4] INFO -- : [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] Started GET "/places?place%5Baddress%5D=%E6%97%A5%E6%9C%AC%E3%80%81%E3%80%92333-0842+%E5%9F%BC%E7%8E%89%E7%9C%8C%E5%B7%9D%E5%8F%A3%E5%B8%82%E5%89%8D%E5%B7%9D%EF%BC%94%E4%B8%81%E7%9B%AE%EF%BC%94%EF%BC%95%E2%88%92%EF%BC%91%EF%BC%91&place%5Blatitude%5D=35.8370795&place%5Blongitude%5D=139.7098658&place%5Bname%5D=%E7%84%BC%E9%B3%A5%E3%81%AE%E3%82%B9%E3%82%A8%E3%83%92%E3%83%AD&place%5Bplace_id%5D=ChIJNWOOxcKUGGARPHuBNA6Bqoo&place%5Bprice_level%5D=&place%5Brating%5D=4&place%5Buser_id%5D=4" for 103.3.6.238 at 2022-05-23 08:54:17 +0000 2022-05-23T08:54:17.867284+00:00 app[web.1]: F, [2022-05-23T08:54:17.867223 #4] FATAL -- : [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] 2022-05-23T08:54:17.867324+00:00 app[web.1]: F, [2022-05-23T08:54:17.867287 #4] FATAL -- : [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] ActionController::RoutingError (uninitialized constant Places 2022-05-23T08:54:17.867324+00:00 app[web.1]: Did you mean? Place): 2022-05-23T08:54:17.867326+00:00 app[web.1]: F, [2022-05-23T08:54:17.867313 #4] FATAL -- : [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] 2022-05-23T08:54:17.867364+00:00 app[web.1]: F, [2022-05-23T08:54:17.867338 #4] FATAL -- : [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.6/lib/active_support/inflector/methods.rb:283:in `const_get' 2022-05-23T08:54:17.867365+00:00 app[web.1]: [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.6/lib/active_support/inflector/methods.rb:283:in `block in constantize' 2022-05-23T08:54:17.867365+00:00 app[web.1]: [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.6/lib/active_support/inflector/methods.rb:281:in `each' 2022-05-23T08:54:17.867365+00:00 app[web.1]: [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] vendor/bundle/ruby/2.5.0/gems/activesupport-5.2.6/lib/active_support/inflector/methods.rb:281:in `inject' 2022-05-23T08:54:17.867366+00:00 app[web.1]: [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] ーー略ーー 2022-05-23T08:54:17.867387+00:00 app[web.1]: [893b8cc0-5f58-4c8f-ae95-9115ce9549f7] vendor/bundle/ruby/2.5.0/gems/puma-3.12.6/lib/puma/thread_pool.rb:135:in `block in spawn_thread' 2022-05-23T08:54:17.867867+00:00 heroku[router]: at=info method=GET path="/places?place%5Baddress%5D=%E6%97%A5%E6%9C%AC%E3%80%81%E3%80%92333-0842+%E5%9F%BC%E7%8E%89%E7%9C%8C%E5%B7%9D%E5%8F%A3%E5%B8%82%E5%89%8D%E5%B7%9D%EF%BC%94%E4%B8%81%E7%9B%AE%EF%BC%94%EF%BC%95%E2%88%92%EF%BC%91%EF%BC%91&place%5Blatitude%5D=35.8370795&place%5Blongitude%5D=139.7098658&place%5Bname%5D=%E7%84%BC%E9%B3%A5%E3%81%AE%E3%82%B9%E3%82%A8%E3%83%92%E3%83%AD&place%5Bplace_id%5D=ChIJNWOOxcKUGGARPHuBNA6Bqoo&place%5Bprice_level%5D=&place%5Brating%5D=4&place%5Buser_id%5D=4" host=blooming-eyrie-90060.herokuapp.com request_id=893b8cc0-5f58-4c8f-ae95-9115ce9549f7 fwd="103.3.6.238" dyno=web.1 connect=0ms service=7ms status=404 bytes=1902 protocol=https

おそらくどこかでPlacesが初期化できていない?と思っていますがどこが原因か全くわからず困っています。
エラー発生原因としては

home.html.erb

<%if user_signed_in?%> <%= link_to( '登録', places_path( :place => { :user_id => @user, :name => @client.spot(place.place_id, :language => 'ja').name, :latitude => place.lat, :longitude => place.lng, :price_level => place.price_level, :rating => place.rating, :place_id => place.place_id, :address => @client.spot(place.place_id, :language => 'ja').formatted_address, } ), class:"btn btn-success register col-lg-12 mt-3 p-2" , :method => 'post' )%> <%else%> <%= link_to new_user_session_path do%> <div><p class="btn btn-success col-lg-12 mt-3 p-2" >ログイン</p></div> <%end%> <%end%>

この登録ボタンを押したときに上記のエラーが発生しています。

places_controller.rb

class PlacesController < ApplicationController def create @place = Place.new(place_params) respond_to do |format| if @place.save format.html { redirect_to my_places_todo_path, notice: "#{@place.name} の位置情報を保存しました" } else format.html { render :index, notice: "#{@place.name} の位置情報を保存できませんでした" } end end end private # Never trust parameters from the scary internet, only allow the white list through. def place_params params.require(:place).permit(:user_id, :name, :latitude, :longitude, :address, :price_level, :rating, :place_id) end end

routes.rb

Rails.application.routes.draw do #place namespace :places do # get 'place/list' request get 'home' end resources :places, :only => [ :index, :create, :destroy ,:home] # 記事詳細表示のルーティングにネスト resources :places, expect: [:index] do resource :favorites, only: [:create, :destroy] end #user devise_for :users, controllers: { sessions: "users/sessions", registrations: "users/registrations" } # マイページのルーティングにネスト resources :users, only: [:show, :edit, :update] do get :favorites, on: :collection end #トップページをログイン画面に devise_scope :user do root "users/sessions#new" end get '/users/sign_out' => 'devise/sessions#destroy' get 'users/show' end

正直何が原因かよくわからず、どこのファイルを見ればよいかわからない状態です。
調べてもcontrollerに関するuninitialized constantばかりで解決できませんでした。
お力貸していただければと思います。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

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

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby on Rails 5

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。