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

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

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

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

Q&A

解決済

1回答

2449閲覧

link_to でのエラーを解決したいです。

ckr

総合スコア23

Ruby on Rails

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

0グッド

0クリップ

投稿2020/03/25 12:24

編集2020/04/01 01:11

Rails を用いて、アプリケーション開発を行なっています。
ユーザーがサインインしていれば「マイページ」をホーム画面のビューに表示させたく、
実装中なのですが、下記のエラーが出ております。

エラー詳細

これまで、他のアプリ開発では
<%= link_to "マイページ", user_path(current_user)%>で問題なく
linkが設定できていたので、何が原因なのか分からず、質問させていただきました。

おわかりの方いらっしゃれば、大変恐れ入りますがアドバイスをいただけますでしょうか。

route.rb(ここでuserという名前付きルートを設定しています)

1 2Rails.application.routes.draw do 3 devise_for :users, 4 controllers: { registrations: 'registrations' } 5 6 root 'pages#home' 7 get 'pages/about' 8 get 'pages/help' 9 get 'pages/terms' 10 11 get '/users/:id', to: 'users#show',as: 'user' 12 mount LetterOpenerWeb::Engine, at: "/letter_opener" if Rails.env.development? 13 resources :contacts 14 resources :posts, only: %i(new create index show) 15 16 17end
(エラーが出ているlink_toが記載されているビュー) <nav class="navbar navbar-expand-lg navbar-light" style="background-color: #000"> <div class="container"> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav ml-md-auto align-items-center"> <li class="nav-item"> <%= link_to "Toppage", root_path %> </li> <li class="nav-item"> <%= link_to "お問い合わせ", new_contact_path %> </li> <li class="nav-item"> <% if user_signed_in? %> <%= link_to "マイページ",user_path(current_user) %> <%else%> <%= link_to "新規登録",new_user_registration_path %> <%end%> </li> <!--検索フォーム入れる--> <nav class="navbar navbar-light bg-light"> <form class="form-inline"> <input class="form-control mr-sm-2" type="search" placeholder="検索..." aria-label="検索..."> <button type="submit" class="btn btn-outline-success my-2 my-sm-0">検索</button> </form> </nav> </ul> </div> </div> </nav>

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

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

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

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

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

guest

回答1

0

ベストアンサー

id: nil となってますね。
current_usernil だと思います。

投稿2020/03/29 14:55

s.k

総合スコア423

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

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

ckr

2020/03/30 10:33

ご回答いただき、ありがとうございます。大変助かりました。 ご指摘いただいた、current_userについては、 ログインしている状態でマイページに飛ぼうとしており、nilではないはずなのですが、エラーが出ている状態でした。 念のため、rails cでユーザー情報が登録できていることも確認いたしました。 現時点でエラーが解消できておりませんので、 もし何か追加で打てる策がございましたらご教示いただけますと幸いです。 大変恐れ入りますが、何卒宜しくお願い致します。
s.k

2020/03/30 11:15

リダイレクトされたページで current_user の値を確認してみてください。 値は存在しますか?
s.k

2020/03/30 11:16

あと、ルーティングも見せてください。
ckr

2020/03/31 00:20

コメント頂き感謝申し上げます。 本日夜遅くになるかと思いますが、アップさせて頂きます。 お時間頂き大変申し訳ございませんが、何卒宜しくお願い致します。
ckr

2020/04/01 01:14

s.k様 回答が遅くなってしまい、大変申し訳ございません。 routes,rbのコードを質問に追記致しました。 また、current_user の値について確認しようとしたところ、そもそもlinktoでエラーが表示 されており、usesrコントローラのshowアクションに飛べなくなっており、current_userに値が入っているかどうかを確認できませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問