テキストデータをmysqlに保存しようとしています。
ビューファイルまではブラウザで表示できますが、
テキストを入力して保存を押すとルーティングエラーになります。
試したこと
ルーティングはresourcesでしているのでroute.rbが原因では無い。
new.html.erbのform_withの記述が間違っているのかと考えた。
いろいろ調べたが、local: ture が抜けているのが問題なのでは無いかと思い、追加したが、解決しない。
以上です。
よろしくお願いします。
ruby
1Rails.application.routes.draw do 2 3 root to: 'posts#index' 4 5 resources :posts 6 7end
ruby
1class PostsController < ApplicationController 2 3 def index 4 @memories = Memory.all 5 end 6 7 def new 8 @memory = Memory.new 9 end 10 11 def create 12 @memory = Memory.new(memory_params) 13 if @memory.save 14 redirect_to root_path 15 else 16 render 'new' 17 end 18 end 19 20 private 21 22 def memory_params 23 params.permit(:text) 24 end 25 26end 27
ruby
1#new.html.erbのファイルです 2<%= form_with model: @memories, url: posts_path local: true do |f| %> 3 <%= f.label :name, 'メモ' %> 4 <%= f.text_field :name %> 5 <%= f.submit "保存" %> 6<% end %>
回答2件
あなたの回答
tips
プレビュー