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

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

新規登録して質問してみよう
ただいま回答率
85.49%
Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Ruby on Rails 5

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

Ruby

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

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

397閲覧

Ruby on Rails 記事の更新時のエラー

退会済みユーザー

退会済みユーザー

総合スコア0

Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

Ruby on Rails 5

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

Ruby

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

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2019/07/14 13:42

前提・実現したいこと

Ruby on Railsを利用して、ブログ記事を投稿・編集・更新・削除できるウェブサイトを作っています(ドットインストールのRuby on Rails5入門 「#20記事を更新してみよう」) 開発環境はAWS Cloud9を使用

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

イメージ説明
![エラー画面

edit画面に飛び、内容を編集した後に「Update Post」のボタンを押すとこのようなエラーが出ます。別のタイトルをeditした場合は、「posts.2」の「2」部分が他の数字で表示されます。

edit.html.erb

Ruby

1<h2>Edit Post</h2> 2<%= form_for @post, url: posts_path(@post) do |f| %> 3<p> 4 <%= f.text_field:title, placeholder: 'enter title' %> 5 <% if @post.errors.messages[:title].any? %> 6 <span class="error"><%= @post.errors.messages[:title][0] %></span> 7 <% end %> 8</p> 9 10<p> 11 <%= f.text_area:body, placeholder: 'enter body text' %> 12 <% if @post.errors.messages[:body].any? %> 13 <span class="error"><%= @post.errors.messages[:body][0] %></span> 14 <% end %> 15</p> 16 17<p> 18 <%= f.submit %> 19</p> 20<% end %>

posts_controller.rb

Ruby

1class PostsController < ApplicationController 2 3 def index 4 @posts = Post.all.order(create_at: 'desc') 5 end 6 7 def show 8 @post = Post.find(params[:id]) 9 end 10 11 def new 12 @post = Post.new 13 end 14 15 def create 16 @post = Post.new(post_params) 17 18 if @post.save 19 redirect_to posts_path 20 else 21 #render plain: @post.errors.inspect 22 render 'new' 23 end 24 end 25 26 def edit 27 @post = Post.find(params[:id]) 28 end 29 30 def update 31 @post = Post.find(params[:id]) 32 if @post.update(post_params) 33 redirect_to posts_path 34 else 35 render 'edit' 36 end 37 end 38 39end 40 41 42private 43 def post_params 44 params.require(:post).permit(:title, :body) 45 end 46

routes.rb

Ruby

1Rails.application.routes.draw do 2 resources :posts 3 root 'posts#index' 4end 5

試したこと

何度か動画を見直し、説明の通りにコードを書いていますが、直らないので良ければご教授願います。

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

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

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

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

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

guest

回答1

0

ベストアンサー

解決しました!すいません、お手数おかけしました。

投稿2019/07/14 14:33

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問