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

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

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

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

Ruby on Rails

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

2155閲覧

NoMethodErrorが出ています

Miyuki0507

総合スコア2

Ruby

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

Ruby on Rails

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/05/01 08:35

前提・実現したいこと

Railsでブログの作成をしています。
Blogの編集と削除機能を付け加えたいです。

エラーメッセージ

NoMethodError in BlogsController#new
undefined method `move_to_index' for #BlogsController:0x0000000002712558

該当のソースコード

lambda do |target, value, &block| target, block, method, *arguments = expand(target, value, block) target.send(method, *arguments, &block) end end

target.send(method, *arguments, &block)に赤線がありました。

試したこと

下記のファイルを見直しましたが、解決できそうありませんでした。

controller

1class BlogsController < ApplicationController 2 3 before_action :move_to_index, except: :index 4 5 def index 6 @blogs = Blog.all.order(created_at: 'desc') 7 end 8 9 def new 10 @blog = Blog.new 11 end 12 13 def show 14 end 15 16 def create 17 @blog = Blog.new(blog_params) 18 @blog.save 19 redirect_to blogs_path 20 end 21 22 def edit 23 @blog = Blog.find(params[:id]) 24 end 25 26 def update 27 blog = Blog.find(params[:id]) 28 if blog.user_id == current_user.id 29 blog.update(blog_params) 30 end 31 end 32 33 def destroy 34 blog = Blog.find(params[:id]) 35 blog.destroy if blog.user_id == current_user.id 36 end 37 38 private 39 def blog_params 40 params.require(:blog).permit(:title,:text) 41 end 42 43end 44

index

1<% @blogs.each do |blog| %> 2 <div class = "articles"> 3 <div class="box2"> 4 <p><%= blog.title %></p> 5 <p><%= blog.text %></p> 6 <% if user_signed_in? && current_user.id == tweet.user_id %> 7 <div class="list"> 8 <li><%= link_to '編集', "/blogs/#{blog.id}/edit", method: :get %></li> 9 <br> 10 <li><%= link_to '削除', "/blogs/#{blog.id}", method: :delete %></li> 11 </div> 12 </div> 13 </div> 14<% end %> 15 16

edit

1 2 <%= form_with model: @blog, local: true do |f| %> 3 4 <h3>編集する</h3> 5 <br> 6 <%= f.text_field :title, placeholder: 'title'%> 7 <br> 8 <%= f.text_area :text, placeholder: placeholder: 'text',size: "60x12" %> 9 <br> 10 <%= f.submit "SEND" %> 11 <% end %> 12</div>

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

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

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

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

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

guest

回答1

0

ベストアンサー

提示されたソースだけ見た場合

before_action :move_to_index, except: :index

この行が不要という事になります。

投稿2020/05/01 09:28

asm

総合スコア15149

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

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

Miyuki0507

2020/05/02 10:44

ありがとうございます。こちら、編集し直したら上記のエラーは解消されました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問