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

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

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

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

Q&A

解決済

1回答

855閲覧

トップページに個別詳細の一覧を開くようにしたい

yuki920

総合スコア1

Ruby on Rails

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

0グッド

0クリップ

投稿2020/05/13 16:56

前提・実現したいこと

ログイン後のトップページにログインしているユーザーの詳細一覧を表示する方法をご教授頂きたいです。
※現状は全てのユーザーの登録した情報が一覧で表示されます。

該当のソースコード

RubyonRails

1notes_controller.rb 2class NotesController < ApplicationController 3 before_action :authenticate_user! 4 5 def index 6 @notes = Note.includes(:user) 7 end 8 9 def new 10 @note = Note.new 11 end 12 13 def create 14 Note.create(note_params) 15 redirect_to root_path 16 end 17 18 def edit 19 @note = Note.find(params[:id]) 20 end 21 22 def update 23 note = Note.find(params[:id]) 24 note.update(note_params) 25 redirect_to root_path 26 end 27 28 def show 29 @note = Note.find(params[:id]) 30 end 31 32 def destroy 33 note= Note.find(params[:id]) 34 note.destroy 35 redirect_to root_path 36 end 37 38 39 private 40 def note_params 41 params.require(:note).permit(:text).merge(user_id: current_user.id) 42 end 43 44end 45 46show.html.erb 47<div class= "main"> 48 <div class= "main-right" > 49 <% @notes.each do |note|%> 50 <div class= "main-right__content"> 51 <%=link_to safe_join(note.text.split("\n"),tag(:br)),edit_note_path(note.id),class: "main-right__content--text" %> 52 </div> 53 <% end %> 54 <div class= "main-right__new"> 55 <%= link_to "New work",new_note_path,class: "main-right__new--text"%> 56 </div> 57 </div> 58</div>

試したこと

routes.rbでroot to: "notes#show"に変更しましたが思い通りの動作にすること出来なかったです。

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

deviseを使用してログイン機能を実装しています。

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

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

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

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

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

guest

回答1

0

ベストアンサー

[思い通りの動作にすること出来なかった]
ではなく、「こうなってほしいのに、こうなった」としてください。
でないと、どうしたいのかもどういう状態んなったのかも想像でおこなうことになります。
nilにはeachがないというエラーですか?
欲しいのは Note一つではなく、loginユーザーのNotes一覧ですね?
loginしていない時のTOPはどうしたいのですか?

辺りの情報が必要

root to: "notes#index" にしてください.で 

def index if current_user @notes = Note.includes(:user).where(user_id: current_user.id) else loginしていなかった時の処理 end end

投稿2020/05/13 22:58

winterboum

総合スコア23567

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問