質問編集履歴

1

質問内容がわかりにくかった為

2021/06/29 02:44

投稿

Yutaka-kamei
Yutaka-kamei

スコア4

test CHANGED
@@ -1 +1 @@
1
- リレーション先検索機能
1
+ groupBy記述方法について
test CHANGED
@@ -1,18 +1,16 @@
1
- 現在検索機能でカスマーの名前、メモ情報ら検索できるようにはなっております。ここからリレーション先情報からも検索きるようにしたいです。(検索欄はもうひとつ作ります。
1
+ 現在検索機能実装中、groupByを使いデーを表示したいです。自分りに調べて記述してみたですが上手くいかなのでgroupByの記述方法ついてアドバイスお願い致します。
2
-
3
- 子テーブル(detailsテーブル)にmenuというカラムがあります。検索機能でmenuから引っ張ってきたいです。
4
2
 
5
3
 
6
4
 
7
- joinなどでテーブルを繋げて試してみたのですが上手くいきませんでした。
8
5
 
9
- アドバイスお願い致します。
6
+
7
+
10
8
 
11
9
  ```php
12
10
 
13
- <div class="right-content">
14
11
 
12
+
15
- <h1>お客様検索</h1>
13
+ <h1>メニュー検索</h1>
16
14
 
17
15
  <div class="col-sm-4" style="padding:20px 0; padding-left:0px;">
18
16
 
@@ -20,7 +18,7 @@
20
18
 
21
19
 
22
20
 
23
- <input type="text" name="keyword" value="" class="form-control" placeholder="名前を入力してください">
21
+ <input type="text" name="menuword" value="" class="form-control" placeholder="名前を入力してください">
24
22
 
25
23
  <input type="submit" value="検索" class="btn btn-info">
26
24
 
@@ -30,73 +28,7 @@
30
28
 
31
29
 
32
30
 
33
-
34
-
35
- @foreach ($items as $item)
36
-
37
-
38
-
39
-
40
-
41
- <div class="frameb" >
42
-
43
- <div class="contents">
44
-
45
- <div class="mailcontent">
46
-
47
- <div class="first-content">
48
-
49
- <p class="customer-name">お客様氏名: {{$item['name']}} 様    <a style="font-size:20px;" href="{{route('setting', ['id' => $item['id']])}}">編集</a></p>
50
-
51
- </div>
52
-
53
-
54
-
55
- @if($item['email']==Null)
56
-
57
- <p class="group">メールアドレス: 未登録</p>
58
-
59
- @else
60
-
61
- <p class="group">メールアドレス: {{$item['email']}}</p>
62
-
63
- @endif
64
-
65
- @if($item['memo']==Null)
66
-
67
- <p class="group">メモ: なし</p>
68
-
69
- @else
70
-
71
- <div class="memo">
72
-
73
- <p class="memo-main">メモ:</p>
74
-
75
- <p>{!! nl2br ($item['memo'])!!}</p>
76
-
77
- </div>
78
-
79
- @endif
80
-
81
-
82
-
83
- </div>
84
-
85
- <a href="{{route('detail', ['id' => $item['id']])}}">詳細</a>
86
-
87
- </div>
88
-
89
- </div>
90
-
91
- @endforeach
92
-
93
- {{ $items->appends(request()->input())->links('pagination::bootstrap-4') }}
94
-
95
- </div>
96
-
97
31
 
98
-
99
- </div>
100
32
 
101
33
  ```
102
34
 
@@ -104,61 +36,39 @@
104
36
 
105
37
  ```php
106
38
 
107
- public function input(Request $request)
108
39
 
109
- {
110
40
 
111
-
41
+ $details_get_query =Detail::select('details.menu','customers.name','customers.memo','customers.email','customers.id')->join('customers','details.customer_id','=','customers.id');
112
42
 
113
-
114
43
 
115
-
116
44
 
117
- $customers_get_query = Customer::latest('id','name','gender','phone','email','memo','created_at');
118
45
 
119
- // ↑投稿順に表示するため
120
46
 
47
+
48
+
49
+
50
+
121
- if(!empty($request->input('keyword')))
51
+ }if(!empty($request->input('menuword')))
122
52
 
123
53
  {
124
54
 
125
55
 
126
56
 
127
- $keyword = $request->input('keyword');
57
+ $menuword = $request->input('menuword');
128
58
 
129
- // ↑inputのname
59
+
130
60
 
131
- $customers_get_query->where('name','like','%'.$keyword.'%')->orWhere('memo', 'like','%'.$keyword.'%')->orWhere('email', 'like','%'.$keyword.'%')->orWhere('phone', 'like','%'.$keyword.'%');
61
+ $details_get_query->where('menu','like','%'.$menuword.'%');
132
62
 
63
+
64
+
133
-
65
+ $items = $details_get_query->paginate(3);
66
+
67
+
134
68
 
135
69
  }
136
70
 
137
-
138
-
139
-
140
-
141
-
142
-
143
- $items = $customers_get_query->paginate(3);
144
-
145
-
146
-
147
-
148
-
149
- return view('customer.input', [
150
-
151
- 'items' => $items,
71
+ //
152
-
153
- 'keyword' => $request->input('keyword',""),
154
-
155
- ]);
156
-
157
-
158
-
159
-
160
-
161
- }
162
72
 
163
73
 
164
74