現状
railsでブログアプリ(単純)を開発中で、投稿の際に利用者に文章(text)を入力してもらいます。
その際にストロングパラメータを使うのですが、params.permit(:text)ではうまくいかず、requireの仕組みもよくわからないままコピペしたら出力が変になってしまいました。
問題のところ
こう入力すると
ハッシュ形式でtextが出てきてしまいます。
(test_userはユーザー名なので気にしないでください)
これを{"text"=>"test"}ではなくて単にtestと出力させたいです。
コード
ruby
1#tweetsコントローラー 2class TweetsController < ApplicationController 3 def index 4 @tweets= Tweet.all.order(id: "DESC") 5 end 6 7 def new 8 @tweets = Tweet.new 9 end 10 11 def create 12 Tweet.create(text: tweet_params.permit(:text),user_id: current_user.id,user_name: current_user.username) 13 end 14 15 private 16 def tweet_params 17 params.require(:tweet).permit(:text) 18 end 19end 20
ruby
1#new.html.erb 2<%= form_with(model: @tweets,local: true) do |f| %> 3 <%= f.label :text %> 4 <%= f.text_field :text %> 5 <%= f.submit %> 6<% end %> 7
開発環境
rails
aws
データベースはmysql
補足
ruby
1params.permit(:text)
これではエラーが起き、ストロングパラメータがうまくできなかったことも疑問でした
長くてわかりづらいのですが、知識のある方アドバイス等お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/11 04:08