前提・実現したいこと
railsでブログのようなものを作っていてそれの編集機能を作りたい。
発生している問題・エラーメッセージ
###home_controller.rb
class HomeController < ApplicationController def top end def index @post=Post.all.order(created_at: :desc) end def new end def create @post=Post.new(content:params[:content]) if @post.save flash[:notice]="完了しました。" redirect_to("/home/index") else render("/home/new") end end def show @post=Post.find_by(id:params[:id]) end def edit @post=Post.find_by(id:params[:id]) end def update @post=Post.find_by(id:params[:id]) @post.content=params[:content] if @post.save flash[:notice]="完了しました" redirect_to("/home/index") else render("/home/edit") end end end
###edit.html.erb
<div> <h1>編集</h1> <%= form_tag("/home/:id/update") do %> <textarea name="content"><%= @post.content %></textarea> <input type="submit" value="編集する"> <% end %> </div>
###routes.rb
Rails.application.routes.draw do # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html get "/" => "home#top" get "/home/index" => "home#index" get "/home/new" => "home#new" post "/home/create" => "home#create" get "/home/:id" => "home#show" get "/home/:id/edit" => "home#edit" post "/home/:id/update" => "home#update" end
###試したこと
createメソッドで似たようなことをやっているのにも関わらずエラーが出てしまったのでインターネットで調べてみた。
似たように作っていた記事
調べると似たようなやり方で実装している方がいたがなぜ自分はできないのかわからない。
補足情報(FW/ツールのバージョンなど)
rails 5.2.3
SQLite
windows 10
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。