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

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

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

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

MySQL

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

Ruby on Rails

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

データベース

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

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

Q&A

0回答

318閲覧

データベースに値が保存できません。

ringo0820

総合スコア0

Ruby on Rails 6

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

MySQL

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

Ruby on Rails

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

データベース

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

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

0グッド

0クリップ

投稿2020/12/13 07:24

rails初心者です。
現在架空のアパレルサイトを制作しており、
その中でログインユーザーと既存のスタッフ間でチャットが出来る機能を実装しようと考えております。
新規チャット名を入力とチャットしたいスタッフ名を選んでCreate Roomボタンを押すと
以下のエラーメッセージが発生しました。
Parametersには値が入っているのでrooms_controller.rb内のparamsの記述が誤っているのでは無いかと推測していますが実際にどのような記述をして良いかわかりません。
どなたかご指導のほどよろしくお願いいたします。

###発生している問題・エラーメッセージ

ターミナル内 6: def create 7: @room = Room.new(room_params) => 8: binding.pry 9: if @room.save 10: redirect_to new_chat_path 11: else 12: render :new 13: end 14: end [1] pry(#<RoomsController>)> params => <ActionController::Parameters {"authenticity_token"=>"en4ozgJgTvHsBXPAEV6+UyaK/stZPAtk5m6lNU58kmmN+2f5CKo+mlOgzwEEmO5DVIGynskmOKLYZ/rOv+xytA==", "room"=><ActionController::Parameters {"name"=>"新規チャット", "staff_name"=>"misaki", "user_id"=>"3"} permitted: false>, "commit"=>"Create Room", "controller"=>"rooms", "action"=>"create"} permitted: false> [2] pry(#<RoomsController>)> @room.save => false [3] pry(#<RoomsController>)> @room.errors => #<ActiveModel::Errors:0x00007ff4af5662a0 @base= #<Room:0x00007ff4b194ebe0 id: nil, name: "新規チャット", user_id: 3, staff_name: "misaki", created_at: nil, updated_at: nil>, @details= {:staff=>[{:error=>:blank}, {:error=>:blank}], :user=>[{:error=>:blank}, {:error=>:blank}]}, @messages= {:staff=>["must exist", "can't be blank"], :user=>["must exist", "can't be blank"]}>

###該当のソースコード

roomscontroller

1class RoomsController < ApplicationController 2 def new 3 @room = Room.new 4 end 5 6 def create 7 @room = Room.new(room_params) 8 if @room.save 9 redirect_to new_chat_path 10 else 11 render :new 12 end 13 end 14 15 private 16 17 def room_params 18 params.require(:room).permit(:name, :staff_name, :user_id) 19 end 20 21end

newhtml

1<div class='chat-room-form'> 2 <h1>新規チャットルーム</h1> 3 <%=form_with model: @room, local: true do |f|%> 4 <div class='chat-room-form__field'> 5 <div class='chat-room-form__field--left'> 6 <%= f.label :ルーム名, class: 'chat-room-form__label'%> 7 </div> 8 <div class='chat-room-form__field--right'> 9 <%= f.text_field :name, class: 'chat__room_name chat-room-form__input', placeholder: 'ルーム名を入力してください'%> 10 </div> 11 </div> 12 <div class='chat-room-form__field'> 13 <div class='chat-room-form__field--left'> 14 <label class='chat-room-form__label' for='chat_room_チャットメンバー'>スタッフ</label> 15 </div> 16 <div class='chat-room-form__field--right'> 17 <select name="room[staff_name]"> 18 <option value="">チャットするスタッフを選択してください</option> 19 <% Staff.all.each do |staff| %> 20 <option><%= staff.staff_name %></option> 21 <% end %> 22 </select> 23 <input name="room[user_id]" type="hidden" value=<%= current_user.id %>> 24 </div> 25 </div> 26 <div class='chat-room-form__field'> 27 <div class='chat-room-form__field--left'></div> 28 <div class='chat-room-form__field--right'> 29 <%= f.submit class: 'chat-room-form__action-btn'%> 30 </div> 31 </div> 32 <% end %> 33</div>

roomsテーブル
|id|name|user_id|staff_name|created_at|updated_at|
|:--|:--:|--:|
||||

staffsテーブル
|id|staff_name|created_at|updated_at|
|:--|:--:|--:|
||||

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問