質問編集履歴

4

情報の追記

2022/10/10 17:38

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,8 @@
3
3
 
4
4
 
5
5
  ### 発生している問題・エラーメッセージ
6
+ 調べたところ@anotherEntriesが2つ存在するために2つ表示されている。
7
+
6
8
  ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-10-10/4c594178-ff4b-4aba-b430-75ee65e906f4.png)
7
9
 
8
10
  ### 該当のソースコード

3

質問の修正

2022/10/10 13:58

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,5 +1,5 @@
1
1
  ### 前提
2
- 配列からループ分を使い自身のDMを一覧表示させようとしたのですが、下記は2つDMがあるが、2つのDM2つずつ表示してしまます
2
+ 配列からループ分を使い自身のDMを一覧表示させようとしたのですが、一覧にDM相手の名前つのDMに対して回表示されるので1のDMに情報を1つずつ表示させたい。
3
3
 
4
4
 
5
5
  ### 発生している問題・エラーメッセージ

2

誤字脱字の修正

2022/10/10 07:14

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -50,7 +50,7 @@
50
50
 
51
51
  !追記
52
52
  1つずつ調べてみたところ、@anotherEntriesが複数表示させる根源でした。
53
- each文の箇所を少し変更を程化ところ現在存在する2つのDMが表示されたものの相変わらず名前は1つにつき2回表示されている。
53
+ each文の箇所を少し変更をしところ現在存在する2つのDMが表示されたものの相変わらず名前は1つにつき2回表示されている。
54
54
  またrooms_controllerのindex箇所である@anotherEntriesのwhere箇所について
55
55
  現在、調べています。
56
56
 

1

質問の情報更新

2022/10/10 07:14

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
  ### 発生している問題・エラーメッセージ
6
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-10-10/9e401108-b599-459d-986f-9a7187c9a012.png)
6
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2022-10-10/4c594178-ff4b-4aba-b430-75ee65e906f4.png)
7
7
 
8
8
  ### 該当のソースコード
9
9
 
@@ -15,30 +15,25 @@
15
15
  ```
16
16
 
17
17
  ```views/rooms/_room.html.erb
18
- <div class='room-list'>
18
+ <div class = 'dm-list'>
19
- <ul class="list-unstyled">
20
- <li class="mb-3 d-flex">
19
+ <% @rooms.each do |room| %>
21
- <div style='width: 200px; border:solid 1px gray'>
20
+ <div style='width: 200px; border:solid 1px gray'>
22
- <% @anotherEntries.each do |entry| %>
21
+ <% @anotherEntries.each do |entry| %>
23
- <% if @rooms %>
24
- <p><%= link_to entry.user.name, user_path(entry.user), class: "text-decoration-none" %></p>
22
+ <p><%= link_to entry.user.name, user_path(entry.user), class: "text-decoration-none" %></p>
25
- <% @rooms.each do |room| %>
26
- <%= link_to room.room_name, plan_path(room.plan_id), class: "text-decoration-none" %><br />
27
- <%= link_to 'メッセージ', room, class: "btn btn-primary btn-lg" %><br />
28
- <% end %>
23
+ <% end %>
24
+ <p><%= link_to room.room_name, plan_path(room.plan_id), class: "text-decoration-none" %></p><br />
25
+ <p><%= link_to 'メッセージ', room, class: "btn btn-primary btn-lg" %></p><br />
26
+ </div><br />
27
+
29
- <% end %>
28
+ <% end %>
30
- <% end %>
31
- <div class="d-flex justify-content-left mb-2">
29
+ <div class="d-flex justify-content-left mb-2">
32
- <%== pagy_bootstrap_nav(@pagy) %>
30
+ <%== pagy_bootstrap_nav(@pagy) %>
33
- </div>
31
+ </div>
34
- </div>
35
- </li>
36
- </ul>
37
32
  </div>
38
33
  ```
39
34
  ```rooms_controller/indexアクション
40
35
  def index
41
- @pagy,@rooms = pagy(Room.all.select(:id,:room_name,:plan_id))
36
+ @pagy,@rooms = pagy(Room.all.select(:id,:room_name,:plan_id), items:10)
42
37
  @currentEntries = current_user.entries
43
38
  myRoomIds = []
44
39
 
@@ -46,9 +41,16 @@
46
41
  myRoomIds << entry.room.id
47
42
  end
48
43
 
49
- @anotherEntries = Entry.where(room_id: myRoomIds).where('user_id != ?',current_user.id)
44
+ @anotherEntries = Entry.where('user_id != ?',current_user.id)
50
- end
45
+ end
51
46
  ```
52
47
 
53
48
  ### 試したこと
54
49
  @anotherEntriesや@roomsのeach文の記述箇所を変えて、1つずつできるか試したのですが、どうして2つのDM2回表示してしまいます。
50
+
51
+ !追記
52
+ 1つずつ調べてみたところ、@anotherEntriesが複数表示させる根源でした。
53
+ each文の箇所を少し変更を程化したところ現在存在する2つのDMが表示されたものの相変わらず名前は1つにつき2回表示されている。
54
+ またrooms_controllerのindex箇所である@anotherEntriesのwhere箇所について
55
+ 現在、調べています。
56
+