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

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

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

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

Ruby

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

Ruby on Rails

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

Q&A

0回答

1413閲覧

undefined method `ensure_correct_user' for #<QuestionsController: というエラーが出てしまいます。

showko222

総合スコア13

Ruby on Rails 5

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

Ruby

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

Ruby on Rails

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

0グッド

0クリップ

投稿2018/02/19 11:33

編集2022/01/12 10:55

railsで初めて練習用のサービスを作っております

エラーを解決できてらず困っております。
初心者なのですが、ご回答いただけますと大変幸いです。

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

NoMethodError in QuestionsController#edit undefined method `ensure_correct_user' for #<QuestionsController:      > case filter when Symbol lambda { |target, _, &blk| target.send filter, &blk } when String l = eval "lambda { |value| #{filter} }" lambda { |target, value| target.instance_exec(value, &l) } activesupport (4.2.6) lib/active_support/callbacks.rb:432:in `block in make_lambda' activesupport (4.2.6) lib/active_support/callbacks.rb:145:in `block in halting_and_conditional' activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `block in call' activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `each' activesupport (4.2.6) lib/active_support/callbacks.rb:504:in `call' activesupport (4.2.6) lib/active_support/callbacks.rb:92:in `__run_callbacks__' activesupport (4.2.6) lib/active_support/callbacks.rb:778:in `_run_process_action_callbacks' activesupport (4.2.6) lib/active_support/callbacks.rb:81:in `run_callbacks' actionpack (4.2.6) lib/abstract_controller/callbacks.rb:19:in `process_action' actionpack (4.2.6) lib/action_controller/metal/rescue.rb:29:in `process_action' actionpack (4.2.6) lib/action_controller/metal/instrumentation.rb:32:in `block in process_action' activesupport (4.2.6) lib/active_support/notifications.rb:164:in `block in instrument' activesupport (4.2.6) lib/active_support/notifications/instrumenter.rb:20:in `instrument' activesupport (4.2.6) lib/active_support/notifications.rb:164:in `instrument' actionpack (4.2.6) lib/action_controller/metal/instrumentation.rb:30:in `process_action' actionpack (4.2.6) lib/action_controller/metal/params_wrapper.rb:250:in `process_action' activerecord (4.2.6) lib/active_record/railties/controller_runtime.rb:18:in `process_action' actionpack (4.2.6) lib/abstract_controller/base.rb:137:in `process' actionview (4.2.6) lib/action_view/rendering.rb:30:in `process' actionpack (4.2.6) lib/action_controller/metal.rb:196:in `dispatch' actionpack (4.2.6) lib/action_controller/metal/rack_delegation.rb:13:in `dispatch' actionpack (4.2.6) lib/action_controller/metal.rb:237:in `block in action' actionpack (4.2.6) lib/action_dispatch/routing/route_set.rb:74:in `dispatch' actionpack (4.2.6) lib/action_dispatch/routing/route_set.rb:43:in `serve' actionpack (4.2.6) lib/action_dispatch/journey/router.rb:43:in `block in serve' actionpack (4.2.6) lib/action_dispatch/journey/router.rb:30:in `each' actionpack (4.2.6) lib/action_dispatch/journey/router.rb:30:in `serve' actionpack (4.2.6) lib/action_dispatch/routing/route_set.rb:817:in `call' rack (1.6.8) lib/rack/etag.rb:24:in `call' rack (1.6.8) lib/rack/conditionalget.rb:25:in `call' rack (1.6.8) lib/rack/head.rb:13:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/params_parser.rb:27:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/flash.rb:260:in `call' rack (1.6.8) lib/rack/session/abstract/id.rb:225:in `context' rack (1.6.8) lib/rack/session/abstract/id.rb:220:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/cookies.rb:560:in `call' activerecord (4.2.6) lib/active_record/query_cache.rb:36:in `call' activerecord (4.2.6) lib/active_record/connection_adapters/abstract/connection_pool.rb:653:in `call' activerecord (4.2.6) lib/active_record/migration.rb:377:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/callbacks.rb:29:in `block in call' activesupport (4.2.6) lib/active_support/callbacks.rb:88:in `__run_callbacks__' activesupport (4.2.6) lib/active_support/callbacks.rb:778:in `_run_call_callbacks' activesupport (4.2.6) lib/active_support/callbacks.rb:81:in `run_callbacks' actionpack (4.2.6) lib/action_dispatch/middleware/callbacks.rb:27:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/reloader.rb:73:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/remote_ip.rb:78:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call' web-console (2.3.0) lib/web_console/middleware.rb:28:in `block in call' web-console (2.3.0) lib/web_console/middleware.rb:18:in `catch' web-console (2.3.0) lib/web_console/middleware.rb:18:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call' railties (4.2.6) lib/rails/rack/logger.rb:38:in `call_app' railties (4.2.6) lib/rails/rack/logger.rb:20:in `block in call' activesupport (4.2.6) lib/active_support/tagged_logging.rb:68:in `block in tagged' activesupport (4.2.6) lib/active_support/tagged_logging.rb:26:in `tagged' activesupport (4.2.6) lib/active_support/tagged_logging.rb:68:in `tagged' railties (4.2.6) lib/rails/rack/logger.rb:20:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/request_id.rb:21:in `call' rack (1.6.8) lib/rack/methodoverride.rb:22:in `call' rack (1.6.8) lib/rack/runtime.rb:18:in `call' activesupport (4.2.6) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call' rack (1.6.8) lib/rack/lock.rb:17:in `call' actionpack (4.2.6) lib/action_dispatch/middleware/static.rb:120:in `call' rack (1.6.8) lib/rack/sendfile.rb:113:in `call' railties (4.2.6) lib/rails/engine.rb:518:in `call' railties (4.2.6) lib/rails/application.rb:165:in `call' rack (1.6.8) lib/rack/lock.rb:17:in `call' rack (1.6.8) lib/rack/content_length.rb:15:in `call' rack (1.6.8) lib/rack/handler/webrick.rb:88:in `service' def ensure_correct_user @question = Question.find_by(id: params[:id]) if @question.user_id != @current_user.id.to_i flash[:notice] = "権限がありません" redirect_to("/questions/index") end end #こちらのコードを questions_controller.rb に記入しておりました。 #試行錯誤した結果、なぜか上記の記述を application_controller.rbに書き写したところ、 #編集(edit)については使用可能となりました。

該当のソースコード

rails

1ソースコード

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

def ensure_correct_user
@question = Question.find_by(id: params[:id])
if @question.user_id != @current_user.id.to_i
flash[:notice] = "権限がありません"
redirect_to("/questions/index")

end

end

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

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

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

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

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

scivola

2018/02/19 13:48

「ensure_correct_user というメソッドは知らん」と言っているので,そのメソッドが使われている箇所を見せてください。
showko222

2018/02/19 13:51 編集

def ensure_correct_user @question = Question.find_by(id: params[:id]) if @question.user_id != @current_user.id.to_i flash[:notice] = "権限がありません" redirect_to("/questions/index") end end となります、お返事いただきありがとうございます。
showko222

2018/02/19 13:53

補足情報に追記致しました。
scivola

2018/02/19 13:55

見づらいので質問のほうに追記していただけますか。また,ensure_correct_user の定義は,どこに書いたのかも書いてください(ファイルパスとかクラスとかの情報)。また,使った箇所(エラーが出たところ)のコードも示してください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問