回答編集履歴

3

編集

2020/09/06 05:24

投稿

phper.k
phper.k

スコア3923

test CHANGED
@@ -86,7 +86,7 @@
86
86
 
87
87
  $team_users = $teams->map(function($team){
88
88
 
89
- return $team->team_users->user_id;
89
+ return $team->team_users->pluck('user_id');
90
90
 
91
91
  });
92
92
 

2

追記

2020/09/06 05:24

投稿

phper.k
phper.k

スコア3923

test CHANGED
@@ -61,3 +61,37 @@
61
61
 
62
62
 
63
63
  [https://readouble.com/laravel/7.x/ja/queries.html](https://readouble.com/laravel/7.x/ja/queries.html)
64
+
65
+
66
+
67
+ ---
68
+
69
+
70
+
71
+ Laravelの便利な機能であるリレーションを十分に活かしていません。
72
+
73
+
74
+
75
+ ↓改善したソース
76
+
77
+
78
+
79
+ ```php
80
+
81
+ $user_id = Auth::id();
82
+
83
+
84
+
85
+ $teams = Team::with(['team_users'])->where('user_id', $user_id)->get();
86
+
87
+ $team_users = $teams->map(function($team){
88
+
89
+ return $team->team_users->user_id;
90
+
91
+ });
92
+
93
+
94
+
95
+ dd($team_users);
96
+
97
+ ```

1

追記

2020/09/06 03:36

投稿

phper.k
phper.k

スコア3923

test CHANGED
@@ -27,20 +27,6 @@
27
27
  他人の貴重な時間をいただくんですから、質問文は丁寧に書くべきです。
28
28
 
29
29
  インデントもぐちゃぐちゃなのはいただけないです。
30
-
31
-
32
-
33
- (2) MVCの理解が足りていません。
34
-
35
-
36
-
37
- `TeamUser` は Team と User を結ぶ「中間テーブルのはず。Laravel において中間テーブルはモデルにしません。
38
-
39
-
40
-
41
- こちらの「多対多」の項目をしっかり読んでおきましょう
42
-
43
- [https://readouble.com/laravel/7.x/ja/eloquent-relationships.html#many-to-many](https://readouble.com/laravel/7.x/ja/eloquent-relationships.html#many-to-many)
44
30
 
45
31
 
46
32