前提・実現したいこと
お問い合わせページを表示させたいです。
ローカル環境で作成したページをHerokでデプロイし、お問い合わせページ以外は問題なく、表示ができています。
お問い合わせページは入力部分でデータベース管理をしているのでエラーが出ていると思います。
発生している問題・エラーメッセージ
-
ブラウザ画面
We're sorry, but something went wrong.
If you are the application owner check the logs for more information. -
コンソール上の表示
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
該当のソースコード
[contens/new.html.erb]---
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>family recipe</title> <meta name="description" content="家事代行サービス" </head> <body> <div class="big-bg4"> <header class="page-header wrapper"> <h1><a href="/posts"><img class="logo" src="../assets/familelogo3.jpg" alt="ふぁみれロゴ"></a></h1> <nav> <ul class="main-nav"> <li><a href="/posts">TOP</a></li> <li><a href="/posts/new">新着情報</a></li> <li><a href="/posts/recipe">レシピ紹介</a></li> <li><a href="/posts/contact">お問い合わせ</a></li> </ul> </nav> </header> <div class="wrapper"> <h2 class="page-title">お問い合わせ</h2> <p>family recipeの本サイトをご覧いただきありがとうございます!!<br> 省略 </p> <%= form_with(model: @contact, local: true) do |form| %> <label for="name">お名前</label> <%= form.text_field :name, placeholder: "name" %> <label for="tel">電話番号</label> <%= form.text_field :tel, placeholder: "tel" %> <label for="mail">メールアドレス</label> <%= form.text_field :mail, placeholder: "mail" %> <label for="message">メッセージ</label> <%= form.text_area :content, placeholder: "message" %> <div> <%= form.submit '送信', class:"button" %> </div> <% end %> </div> </div> <section id="location"> <div class="wrapper"> <div class="location-info"> <h3 class="sub-title">Family recipe</h3> <p> 省略 </p> </div><!-- /.location-info --> </div><!-- /.wrapper --> </section> <footer> <div class="wrapper"> <p><small>family recipe</small></p> </div> </footer> </body> </html>[contens/create.html.erb]---
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>お問い合わせ</title> <meta name="description" content="家事代行サービス" </head> <body> <div class="big-bg5"> <header class="page-header wrapper"> <h1><a href="/posts"><img class="logo" src="../assets/familelogo3.jpg" alt="ふぁみれロゴ"></a></h1> <nav> <ul class="main-nav"> <li><a href="/posts">TOP</a></li> <li><a href="/posts/new">新着情報</a></li> <li><a href="/posts/recipe">レシピ紹介</a></li> <li><a href="/posts/contact">お問い合わせ</a></li> </ul> </nav> </header> <div class="wrapper"> <p class="page-title2">ご登録ありがとうございました。</p> <div class="topbutton"> <a class="button" href="/posts">TOPへ戻る</a> </div> </div> </div> <section id="location"> <div class="wrapper"> <div class="location-info"> <h3 class="sub-title">Family recipe</h3> <p> 省略 </p> </div><!-- /.location-info --> </div><!-- /.wrapper --> </section></body> </html><footer> <div class="wrapper"> <p><small>family recipe</small></p> </div> </footer>
[contacts_controller.rb]---
class ContactsController < ApplicationController
def new
@contacts = Contact.new
end
def create
Contact.create(contact_params)
end
private
def contact_params
params.permit(:name, :tel, :mail, :content)
end
end
[routes.rb]---
Rails.application.routes.draw do
root to: 'posts#index'
get 'posts', to: 'posts#index'
get 'posts/new', to: 'posts#new'
get 'posts/famile', to: 'posts#famile'
get 'posts/show', to: 'posts#show'
get 'posts/recipe', to: 'recipes#new'
get 'posts/contact', to: 'contacts#new'
post 'posts/contact', to: 'contacts#create'
end
試したこと
・文法の記述誤りがないかの確認
・デプロイはインターネットで調べ、RailsアプリをHerokuにデプロイする流れを参考にデプロイしました。
補足情報(FW/ツールのバージョンなど)
データベースはmysqlです。ローカル環境ではデータベースに保存できています。
今回初めてHerokuを使って本番環境へ上げてみました。(前回はAWSを使用。)
トップページやビューを表示するページは問題なく、表示はできていますがお問い合わせページ(入力フォーム)のみ表示ができておりません。
アドバイスよろしくお願いします。

あなたの回答
tips
プレビュー