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

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

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

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

Ruby

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

Q&A

0回答

146閲覧

form_tagを使用し入力した情報を保存しようてしたのだが、うまく保存されない

noburinburin

総合スコア6

Ruby on Rails 5

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

Ruby

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

0グッド

0クリップ

投稿2018/09/16 06:39

前提・実現したいこと

現在、Ruby(Rails)で簡易版のtwitterのようなアプリを作っています。
投稿した内容にコメントができるような機能を実装したいのですが、テキストエリアに入力した情報がうまいこと保存されないことに悩んでいます。

お分かりになる方がいましたら、教えていただけると助かります。

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

エラーメッセージ

viewのform部分

<% if current_user %> <%= form_tag("/talk/#{@post.id}/comments", method: :post) do %> <div class="col-sm-6 offset-sm-3"> <textarea cols="30" name="text" placeholder="コメントする" rows="2" class="form-control"></textarea> </div> <div class="col-sm-6 offset-sm-3 mt-2" > <input type="submit" value="SENT" class="btn btn-primary"> </div> <% end %> <% end %> </div>

controller部分

class CommentsController < ApplicationController def create Comment.create(text: comment_params[:text], post_id: comment_params[:talk_id], user_id: current_user.id) end private def comment_params params.permit(:text, :talk_id) end end

rooting部分

Rails.application.routes.draw do devise_for :users root 'talk#index' resources :talk do resources :comments, only: [:create] end resources :users, only: [:show] end

何が原因なのか?

binding.pryでフォームから送られた情報を見た所、textもpost_idも送信されており、データベース保存に必要な情報は全て送られていたのですが、何が原因なのでしょうか?

補足情報

Ruby -v 2.5.0
Rails -v 5.2.1

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

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

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

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

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

takumiabe

2018/09/18 17:28

SENTを押した直後の、rails serverのログを張ったほうが良いと思います。おそらくcreateが失敗してfalseを返しているのでは。
noburinburin

2018/09/18 17:32

原因は、modelファイルに、potional:trueを記述することでした。rubyのバージョンだったか、railsのバージョンの関係だったかは忘れてしまいましたが、、、それが原因でした!以後質問をするときはログも貼るようにします!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問