#実現したいこと
フォームで送信した値をコントローラー内で受け取り変数に代入して、logger.debug()
でコンソールに表示したい
##実際のコード
フォームのコード
erb
1<%= form_with(model: @micropost, local: true) do |f| %> 2 <div> 3 <%= f.label :content, 'コンテンツ' %> 4 <%= f.text_field :content, class: '' %> 5 </div> 6 <%= f.submit '投稿', class: 'btn btn-primary' %> 7<% end %>
コントローラー
rb
1def create 2 @micropost = Micropost.new(micropost_params) 3 4 logger.debug("ここから始まります") 5 content = params[:content] 6 logger.debug(content) 7 logger.debug("ここで終わります") 8 9 if @micropost.save 10 redirect_to @micropost 11 else 12 render :new 13 end 14 end
ログ
Parameters: {"utf8"=>"✓", "authenticity_token"=>"QwnCEWm/3g+QOvekybWxYg9SdPTodiU8q+NkxRmgdy5Zc/S3fm/YKYghoFqYwIzbxI3SrhqjeeaYn5P/PsXmUA==", "micropost"=>{"content"=>"test"}, "commit"=>"投稿"} ここから始まります ここで終わります (0.1ms) BEGIN ↳ app/controllers/microposts_controller.rb:23 Micropost Create (0.2ms) INSERT INTO `microposts` (`content`, `created_at`, `updated_at`) VALUES ('test', '2020-06-25 05:31:41', '2020-06-25 05:31:41')
上記のように空欄になってしまいます。
##参考資料
https://railsdoc.com/controller
Railsドキュメントの「パラメータの取得」を参考にしています
ご教示頂けますと幸いです。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。